expoweb/handbook/computing/todo.html
2022-03-22 00:47:20 +00:00

306 lines
16 KiB
HTML

<!DOCTYPE html>
<html>
<head>
<title>Expo Systems - To-Do List</title>
<meta charset="utf-8">
<meta name="keywords" content="NOEDIT">
</head>
<body>
<style>
body {
background: #fff url(/images/style/bg-system.png) repeat-x 0 0
}
/* Use grey for system/programming/nerd pages as a visual reminder */
</style>
<script src="todo.js" defer></script>
<link rel="stylesheet" type="text/css" href="todo-styles.css" />
<h1>Expo Systems To-Do List</h1>
<button onclick="window.location.href = 'todo.html_edit';">Edit this to-do list</button>
<!-- ------------------- Don't touch anything above this line --------------------------->
<h2>How this works</h2>
<p><b>Click on the solid triangle in a sub-heading to reveal</b> the individual to-do items. Click again to hide.<br />
<p><b>Click on the main "How this works" heading</b> to toggle reveal/hide <b>everything.</b>
<p>Printing this page uses a much smaller font. Complain to <a href="mailto:expo-tech@lists.wookware.org">the nerd list</a> if you don't like this behaviour.
<p>Edit this page by clicking on the big blue button. It uses the same "Edit this page" function that you may have used before. Just be careful not to touch the code at the top and bottom of the page. (The "Edit this page" prompt is still there too.)
<p>We are working on a more capable and easier-to-use system which will mimic how <a href="https://github.com/CaveSurveying/CUCCexposurveyissues/issues">GitHub Issues</a> do this sort of thing.
<p>To see the "data maintenance" and "survey data-entry" to-do lists, go to <a href="todo-data.html">the other TO-DO list</a>
<h3>Module to-do texts</h3>
<p>These are extracted directly from the <var>todo = &apos;&apos;&apos;Thing to do &apos;&apos;&apos;</var> string at the top of each file of troggle code:</p>
<hr>
<a href="/todo/anything"><div>
<embed type='text/html' height='200px' width='800px' src="/todo/anything"><br>
Click here if no todo list appears here.</div></a>
<hr>
<h3>Process Documentation</h3>
<details><summary><!--2020-03-26 psargent-->Wallets and new-cave</summary>
<li><!--2020-03-26 psargent-->Explain how to link a new cave into the other caves in
troggle filesystem
<li><!--2020-03-26 psargent-->Explain how to add photos with the correct URL format to sub-HTML files attached to New Caves
<li>explain how to put stuff in the wallet folder and how to look at expofiles/photos/xml/
</details>
<details><summary><!--2021-10-31 psargent-->Scans and Drawings Uploads</summary>
<li>Add to user data manual how to upload to expofiles - in the "survey manual"
<li>Add in description of *where* to put the drawings files
</details>
<details><summary><!--2020-04-13 psargent-->svx check</summary>
<li>explain command line to run on newly typed survex file to check for format errors '$cavern xxxx.svx'
<li>explain when to use svxtrace.py <a href="troggle/scriptscurrent.html">current scripts</a>
<li>Making an svx - explain how to make link to *ref to wallet folder
</details>
<h3>Wallets re-programming</h3>
<details><summary><!--2021-05-21 psargent-->Things wallets.py might do in future </summary>
<li>- integrate into troggle, remove as a distinct script
<li>- relates to conversion of the XRF shell script into python/troggle too
<li>- checking the cave number specified matches the folder for the .svx file,
<li>- checking that the *ref: filed in the survex file is the same as the wallet nameS
<li>- detecting whether there is a description or a list of QMs in the survex file,
<li>- accepting a list of .svx files and not just one (a very common thing),
<li>- checking the name of the cave against the cave number,
<li>- checking whether the website page even exists for this cave,
<li>- being more intelligent about .topo files and thus the lack of scan files,
<li>- checking the date is in the recent past etc.
</details>
<h3>Surveys data entry documentation</h3>
<details><summary>Write code to automatically extract ref info about wallets from tunnel xml files</summary>
<li><!--2020-04-03 psargent-->This will replace :drawings:chk-xml.txt as used by :drawings:check-xml.sh
<li><!--2020-04-03 psargent-->Do similar for Therion files when people start using #REF comments
</details>
<details><summary><!--2020-03-26 psargent-->2019 surveyscans</summary>
<li><!--2020-03-26 psargent-->edit all the content.json files
<li><!--2020-03-26 psargent-->try to autocomplete the content.json by parsing .svx files
<li><!--2020-03-26 psargent-->Put personal names into canonical form
</details>
<details><summary>2014 contents.json</summary>
<li><!--2020-04-03 psargent-->parse all the svx files to extract people, dates & svx references
</details>
<h3>Handbook</h3>
<details><summary><!--2020-04-11 psargent-->Navigation - Context, Situational Awareness</summary>
<li><!--2020-04-11 psargent-->No overall view of what there is: need a user-friendly diagrammatic overview <a href="https://en.wikipedia.org/wiki/Site_map">sitemap</a>. There are 4,869 files in :expoweb:
<li><!--2020-04-11 psargent-->Not fixed by menus - breadcrumbs needed?
<li><!--2020-04-11 psargent-->Diagrams of major sections: survey handbook, rigging handbook, computing handbook, Areas, cave data..
<li><!--2020-04-11 psargent-->Chase Airoa to help fix <a href="../troggle/menudesign.html">the menus for phones</a>
<li><!--2020-04-11 psargent-->Look at <a href="https://www.gov.uk/guidance/government-design-principles">gov.uk guidelines</a> for inspiration</details>
<h3>Areas and prospecting guides</h3>
<details><summary>Areas (these are the sub-areas)</summary>
<li><!--2020-05-01 psargent-->Downgrade the "areas" aspect of the documentation as we don't use these now
</details>
<h3>Photos</h3>
<details><summary><!--2020-04-03 psargent-->Fix the BINS package (Wookey is looking for replacement)</summary>
<li><!--2020-04-03 psargent-->set up git on the BINS software? Fix base url sautret.org
<li><!--2020-04-03 psargent-->set up a cron / Makefile job to run BINS
<li><!--2020-04-03 psargent-->why is 'updatephotos' script in expofiles?
<li>Document the ~expo/webphotos/ directory and how it works
<li>Why does expofiles/photos/xml/ get created containing all the generated xml files? Fix this.
</details>
<details><summary>galley thumbs etc.</summary>
<li>:expoweb:/galley/0.htm thumbnails not loading
</details>
<h3>Laptop config.</h3>
<details><summary><!-- 2020-04-11 psargent --> imagemagick convert</summary>
<li><!--2020-04-03 psargent-->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
<a href="https://cromwell-intl.com/open-source/pdf-not-authorized.html">cromwell-intl.com/open-source/pdf-not-authorized.html</a>
</details>
<h3>System Documentation</h3>
<details><summary><!--2020-04-11 psargent-->Document how we generate the SMK overall lengths and stats</summary>
<li><!--2020-04-20 psargent-->scripts and manual actions in cavern
<li>smklengths.sh script
<li>smklengsths.odt
</details>
<details><summary><!--2020-04-20 psargent-->:loser:/docs/ files</summary>
<li>Questions.txt
<li>SMKlog.txt
</details>
<details><summary><!--2020-03-26 psargent-->Troggle architecture</summary>
<li><!--2020-04-10 psargent-->Regenerate the diagram of the tables in the database & document
<li><!--2020-04-10 psargent-->Describe the parsing/import procedures so non-nerds can do it
</details>
<details><summary><!--2020-03-26 psargent-->Surveyscans</summary>
<li><!--2020-03-26 psargent-->explain where the image files are referenced from: svx, tunnel/therion, and
<li>Be exhaustive in checking all the broken links between svx & wallets
</details>
<details><summary>Makefile</summary>
<li>Get it working ! How many of <a href="../troggle/scriptsother.html">other scripts</a> should be in it ? Should we do data imports to schedule too ?
</details>
<h3>Troggle</h3>
<details><summary><!--2022-02-19 psargent-->Survex file online editing BROKEN</summary>
<li>depends on file permissions being set correctly in :loser: repo
<li>..and mainatianed correctly by the online edit system. CHECK & DOCUMENT.
</details>
<details><summary><!--2022-02-15 psargent--> Expo log parsing</summary>
<li>Parsing broken on several old expo logs, excluded in the source code
<li>the caching of already-parsed logfiles sems broken, troggle always re-parses all files
</details>
<details><summary><!--2021-11-06 psargent--> CaveView fixing</summary>
<li>Comment out bad CaveView on server
<li>Fix .3d files to be in right places & edit javascript to match {{svx3d}} etc.
<li>re-enable CaveView
</details>
<details><summary><!--2021-12-18 psargent--> Scan Upload sets ownership of new files - rsync fails thereafter</summary>
Because the upload form (in troggle) is operating with webserver permisions as user 'www-data' it can't create files
with ownership 'expo'. This stops rsync working (which uses exo@expo.survex.com username), so the form should set permsisions as <br>
-rw-rw-r--<br>
instead of<br>
-rw-r--r--<br>
which it does at the moment.
</details>
<details><summary><!--2021-11-04 psargent--> Scan Upload gives permissions error on localhost and, INITIALLY, on expo.survex.com .</summary>
<li>http://expo.survex.com/scanupload/2022:00
<li>http://expo.survex.com/scanupload/2021:01
</details>
<details><summary><!--2021-10-31 psargent--> admin links to fix password/username ALL BROKEN</summary>
<li>Links on http://localhost:8000/accounts/login/ lead to 404s
</details>
<details><summary><!--2021-11-04 psargent--> non-server, non-Apache links to Cave HTML i/t/l pages ALL BROKEN</summary>
<li>http://expo.survex.com/1623/others/l/113day.htm works but, and
<li>http://localhost:8000/1623/others/l/113day.htm works but
<li>http://localhost:8000/cave/others/l/purple.htm is a 404 as troggle urls.py doesn't do it at all
<li>Ah it is because of the 'cave' page being at /cave/ instead of sent to /1623/ which is the problem..
</details>
<details><summary><!--2020-07-27 psargent--> QM links in cave descriptions ALL BROKEN</summary>
<li><!--2020-07-24 psargent-->There are HREF links to individual QMs in the cave description in e.g. 204
<a href="1623/204/swings.html">Swings and Roundabouts</a> such as "At the bottom there is a climb down over boulders <a href="1623/204/qm.html#C2001-204-45">[C2001-204-45 C]</a>." where the troggle URL fails completely.
</details>
<details><summary>Better import error messages </summary>
<li><!--2020-04-20 psargent-->REPORT 'folder not recognised' errors into error log inside database -> "DataIssue" register
</details>
<details><summary><!-- 2020-04-11 psargent -->Troggle parser/viewer </summary>
<li>Explain how expopages (formerly flatpages) work. refer to computing/hbmanual1.html
</details>
<details><summary><!--2020-07-24 psargent--> Completely new design of QM management needed</summary>
<li><!--2020-07-24 psargent-->see <a href="../troggle/scriptsqms.html">QM status and redesign needed document</a>
</details>
<h3>Troggle Refactoring</h3>
<details><summary><!--2022-02-15 psargent-->MIME types and filename extensions</summary>
<li>We should use standard <a href="https://docs.python.org/3/library/mimetypes.html">https://docs.python.org/3/library/mimetypes.html</a>
to convert between mimetypes and filenames, not our own hacks
<li>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 <a href="https://github.com/ahupp/python-magic">python-magic</a> 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
</details>
<details><summary><!--2020-07-24 psargent-->Make parsers use generators to yield one line at a time</summary>
<li><!--2020-07-24 psargent-->Both recursive load and linear load parsers/survex could do this.
<li><!--2020-07-24 psargent-->In the logbooks parsing and cache loading.
</details>
<details><summary><!--2020-07-24 psargent-->Enhance some exceptions with dataIssue [NOTIFICATION pattern], not just in parsers</summary>
<li><!--2020-07-24 psargent-->https://martinfowler.com/articles/replaceThrowWithNotification.html
</details>
<details><summary><!--2020-07-24 psargent-->Python documentation: Django's use of modern unobvious idioms</summary>
<li><!--2020-07-24 psargent-->[DECORATOR] pattern used for login-required pages
<li><!--2020-07-24 psargent-->Get all trogglistas to read https://ebookscart.com/effective-python-by-brett-slatkin-pdf-download/ - downloded to /expofiles/
<li><!--2020-07-24 psargent-->Get all trogglistas to read https://martinfowler.com/tags/refactoring.html
</details>
<details><summary><!--2020-07-24 psargent-->expopages is used to deliver CSS and JS for django admin pages,</summary>
<li><!--2020-07-24 psargent--> use expopages but fix awkwardnesses such as /expofiles/ directory listing not working
</details>
<details><summary><!--2022-02-19 psargent-->gardening our main model files for unused things</summary>
<li>get rid of 'expeditionday' as a concept everywhere ?
</details>
<details><summary><!--2022-02-19 psargent-->Make QM a first-class 'thing' and manage them explicitly in troggle</summary>
<li>after fixing the display of QMs from the existing hodge-podge
</details>
<h3>Expo Server</h3>
<details><summary><!--2020-07-24 psargent--> document cgit installation and config</summary>
<li><!--2020-07-24 psargent-->as per Wookey on Debian 10
</details>
<details><summary>permissions</summary>
<li><!--2020-04-03 psargent-->do we need a cron job or has the group membership fix fixed it ? either way, document it.
</details>
<details><summary>MySQL configuration </summary>
<li><!--2022-02-18 psargent-->robots.txt completely missing from /home/expo/static or troggle:/media
<li><!--2020-04-10 psargent-->Fix and document permissions for cron jobs
<li><!--2020-05-14 psargent-->Document "anacron" / cron system on server
</details>
<h3>
<font color="fuchsia">This to-do-list gadget itself</font>
</h3>
<details><summary>Status</summary>
<li>This one now uses just HTML5 with no JS. But the other todo page still uses JS
</details>
<details><summary><!--2020-03-26 psargent-->Eventual aim</summary>
<li><!--2020-03-26 psargent-->to replace GitHub <a href="https://github.com/CaveSurveying/CUCCexposurveyissues/issues">
CUCCexposurveyissues</a> for non-tunnel, non-GIS issues.
<li><!--2020-03-26 psargent-->if using tinymcs, use the INLINE mode.
<li><!--2020-03-26 psargent-->Implement comments on an issue, mimicking GitHub issues wiki
<li><!--2020-03-26 psargent-->Use javascript to skip over the _edit page and submit changes
direct to server when updating. Needs direct POST and include the javascript in the posted content.
<li><!--2020-03-26 psargent-->checkboxes so that items can be ticked (which also does strike-through)
<li><!--2020-04-03 psargent-->promotion/demotion options?
<li><!--2020-03-26 psargent-->bin icon to delete an item? Better to have an archive process.
</details>
<!-- ------------------- Do not touch anything below here either ------------------------>
<!--2020-03-26--> Testing area..
<div id="demo">Demonstation text as initially read from disc</div>
<hr>
See also <a href="todo-data.html">Data maintenance to-do list</a><br />
Back to <a href="onlinesystems.html">Online Systems manual</a>
<hr /></body>
</html>