diff --git a/handbook/troggle/django-v3.2-6.0-schedule.jpg b/handbook/troggle/django-v3.2-6.0-schedule.jpg new file mode 100644 index 000000000..a5b726e69 Binary files /dev/null and b/handbook/troggle/django-v3.2-6.0-schedule.jpg differ diff --git a/handbook/troggle/pyodide-logo.webp:Zone.Identifier b/handbook/troggle/pyodide-logo.webp:Zone.Identifier deleted file mode 100644 index b874822ab..000000000 --- a/handbook/troggle/pyodide-logo.webp:Zone.Identifier +++ /dev/null @@ -1,4 +0,0 @@ -[ZoneTransfer] -ZoneId=3 -ReferrerUrl=https://pyodide.org/en/stable/ -HostUrl=https://pyodide.org/en/stable/_static/pyodide-logo.png diff --git a/handbook/troggle/release-roadmap.3c7ece4f31b3.png b/handbook/troggle/release-roadmap.3c7ece4f31b3.png deleted file mode 100644 index 640a9f5bf..000000000 Binary files a/handbook/troggle/release-roadmap.3c7ece4f31b3.png and /dev/null differ diff --git a/handbook/troggle/trog2030.html b/handbook/troggle/trog2030.html index ea37886af..90411fc88 100644 --- a/handbook/troggle/trog2030.html +++ b/handbook/troggle/trog2030.html @@ -76,12 +76,13 @@ Documentation and a working list of on-going programming projects is the key to useful week's work, e.g. extracting the parsed logbooks to use shelve() storage throughout instead of SQL. The next time someone like Radost comes along during the next 5 years we want to be able to use them effectively. +

[Decrufting and refactoring has been continuous since 2020. The ExpeditionDay class was refactored away and many unused properties of classes have been removed. DB query optimisation is only just beginning in 2023 though.]

Option Zero.1

We should probably review and revise all the over-complex templates, originally written in 2006, which do serious amounts of database querying, -and linked object sub-querying, within the template code. This is a nightmare to maintain and debug, e.g. see -the note at the bottom of Wookey 1999 trips. +and linked object sub-querying, within the template code. This is a nightmare to maintain and debug.

A possible goal would be to create all the data that will be displayed in a page as dictionaries - generated by obviously simple python, with some Django query optimisations if necessary - which are then handed as 'context' to the Django page template (those files in diff --git a/handbook/troggle/trogspeculate.html b/handbook/troggle/trogspeculate.html index 701d65009..0df4a8397 100644 --- a/handbook/troggle/trogspeculate.html +++ b/handbook/troggle/trogspeculate.html @@ -75,7 +75,8 @@ frameworks. There are now some Python frameworks, so maybe one of these will giv the stability we want that Javascript is failing to provide, such as Streamlit, NiceGUI and Pynecone. Though things running on wasm are perhaps going to be more future-proof. [2023]. +"https://github.com/pynecone-io/pynecone" rel="noopener noreferrer">Pynecone. Though things running on wasm are perhaps going to be more future-proof. [2023]. +

It looks possible that the <HTMX> approach may settle down to replace HTML5 and also subsume a lot of what is now provided inside Javascript frameworks. We will wait until then.

Our biggest problem

We need: diff --git a/handbook/troggle/trogtests.html b/handbook/troggle/trogtests.html index 33ddc0251..805d87f24 100644 --- a/handbook/troggle/trogtests.html +++ b/handbook/troggle/trogtests.html @@ -10,7 +10,7 @@

Handbook Troggle - Automated Testing

Troggle Automated Testing

-

We have a suite of more than 70 smoke tests +

We have a suite of more than 85 smoke tests which are run manually by troggle programmers like this:

 troggle$ python manage.py test -v 1
@@ -49,7 +49,7 @@ No tests are run with the real expo database.

As yet we have no test database set up, so the in-memory database starts entirely empty. However we have 'fixtures' in troggle/core/fixtures/ -which are JSON files containing dummy data which is read in before a few of the tests. +which are JSON files containing dummy data which is read in before a few of the tests. (Though current wisdom is that factory methods in the test suite are a superior way of managing tests for very long-term projects like ours.)

Automated testing on the server

Something is stopping the test suite running on the server. We haven't fixed this yet.