Releases: stilist/drjohndee.net
Releases · stilist/drjohndee.net
Release 1.0.13
Added
- Add some more place data
- Add
place_link
andplace_reference
Liquid filters - Add annotations to entries
- Add metadata to entries
Changed
- Update Jekyll to v4.2.2
- Update
jekyll-feed
to v0.16.0
Fixed
- Apply annotations to
.txt
source material
Release 1.0.12
Added
- Tag pages now display a map of associated places
- Add some more place data
- Add metadata to entries
- Add
calendar
key to more entries - Add
--font-monospace
font stack - Display DOI in monospace
TimestampRange
now converts Julian dates to Gregorian when appropriate- Add
default_calendar_system
setting to_config.yml
- Set separate light- and dark-mode
theme-color
s - Add
CITATION.cff
file
Changed
- Add comma after day name on day page
- Expand
--font-sans-serif
font stack HistoricalDiary::YearPageGenerator
uses Julian dates until the Gregorian calendar took effect (1580-10-05), and Gregorian dates after -- before all dates were treated as JulianTimestampRange
nowraise
sHistoricalDiary::TimestampRangeError
if the object passed as a timestamp can’t be parsed- Year pages now use calendar year instead of legal year
- Upgrade Ruby dependencies
- Use ‘Dee and Emperor Rudolph II’ tag
- Rename some files from
.md
to.txt
Fixed
- Fix
img-src
CSP domain for Mapbox - Fix
HistoricalDiary::MapTile
alt
text formatting - Fix crash in
HistoricalDiary::Place#point
when there’s not an associated data record - Fix crash in
HistoricalDiary::MapTile
when a point isnil
- Convert link URLs to lowercase to fix S3 retrieval
- Fix bug that prevented the 'missing content' state from rendering
- Change
HistoricalDiary::Place
to handle case that bounding box are specified but latitude and longitude are not - Adjust
TimestampRange
’s calculatedend_date
when given a"YYYY"
or"YYYY-MM"
string -- for"YYYY"
theend_date
will beYYYY
plus one year, and for"YYYY-MM"
theend_date
will beYYYY-MM
plus one month - Fix crash in
TimestampRange#parse_raw_timestamp
if the object passed as a timestamp can’t be parsed - De-duplicate places in
places_keys_for_tag
Liquid filter - Add explicit
webrick
gem dependency for Ruby 3 - Update markup in place template
- Fix issues that caused the index page to only see entries from January first, and that made the year pages always think there was no content
- Clean up unnecessary escaping
Removed
- Remove
LegalYear
class
Release 1.0.11
Added
- Manage DNS using Namecheap Terraform module
- Use CloudFront's managed cache and origin-request policies
- Split Terraform code into multiple files
- Add Lambda@Edge function to apply security headers -- note this code almost works, but fails with
Update the IAM policy to add permission: lambda:EnableReplication* for resource: arn:aws:lambda:us-east-1:<account id>:function:inject-headers:7 and try again.
and I give up on chasing obscure errors - Add debug CSS/JS
- Add tag pages
- Add and update metadata on some entries
- Add and enhance content for 1583 from 'A True and Faithful Relation' (scrying sessions are still absent)
- Add EditorConfig so Visual Studio Code stops indenting things by four spaces
- Add data files for all places mentioned during Dee's trip to Kraków
- Add place pages, which render a static map using MapBox
- Add
place_link.html
include - Add
place.rb
, likeperson.rb
, to manage code for a place - Make map tile use the full width of the content area
- Add support for bounding box to
place.rb
- Add structured data to place page
- Tag
alternateName
s on person page - Add a bit of commentary
- Add
.github/FUNDING.yaml
for sponsorship
Changed
- Upgrade Terraform
aws
provider - Move Terraform code from
terraform/aws
toterraform
- Move
HistoricalDiary::SourceMaterialGenerator
side-effect code to separate method - Use
day_page_link
partial on person page - Separate
DayPage
andYearPage
into individual generators - Remove direct
kramdown-parser-gfm
dependency - Rearrange
_config.yml
- Refactor
HistoricalDiary::DayPage
to render documents directly instead of viasite.pages
-- this avoids rendering each source-material item as a standalone page in addition to interpolation in day pages - Adjust
@media
queries to only apply toscreen
- Don't force Bundler to install into
vendor/bundle
- Use
place_link.html
include on day page instead of just listing keys - Refactor
HistoricalDiary::Place
's map rendering to a separateHistoricalDiary::MapTile
class - Rename
static_map_tile
tostatic_map_html
- Tag ‘DOI’ as an abbreviation
Fixed
- De-duplicate tags listed on day page
- Restore avatars on day pages
- Fix bug that would incorrectly highlight avatars without associated data
- Move CSS file's
@charset
to the first line of the file -- required by the standard - Change file’s extension from
.md
to.txt
to avoid interpreting indentation as ‘this is code’ - Update some incorrect place tags
- Replace
%20
inCONTRIBUTING.md
to make links work
Release 1.0.10
Added
- Add
dates_for_source
,hash_keys
,sort_hash
, andsorted_people_keys
Liquid filters - Add
Person
class to centralize functionality - Link all people and sources from home page
- Note how many times each person appears in entries (based on
people
key) - Link relevant dates on source pages
- Begin adding biography for John Dee from Charlotte Fell Smith’s book ‘John Dee’
- Add some
people
data - Continue adding entries and letters
- Tag people, places, and source material in lots of entries
- Adjust
people_avatar
include andPerson#name_initials
to handlepeople
keys that don't have a corresponding data file - Display places, sources, and tags on date pages
- Add information for several sources
Changed
- Refactor
people
include intopeople_avatars
andperson_avatar
includes - Redefine
person_initials
andperson_name
Liquid filters to usePerson
class - Rename
attribute_from_record
Liquid filter toattribute_from_object_or_source_record
- Refactor
mla_citation
Liquid filter to useattribute_from_object_or_source_record
- Wrap source material in
<blockquote>
tag, to consistently indicate quoted text - Convert additional properties from physical to logical:
margin
,padding
,height
,width
,bottom
,top
- Update styling to follow vertical rhythm
- Change
transcludes.html
to not use Markdown - Change
transcludes.html
structured-data structure to matchentry.html
- Rename
_lib/collections.rb
to_lib/data_collection.rb
to match its module name - Move ‘Autobiographical Tracts’ information from ‘commentary’ data to ‘context’, which is more appropriate
- Change Jekyll cache directory to
_cache.nosync
- Rewrite
HistoricalDiary::SourceMaterialGenerator
to use Jekyll’s cache system --jekyll build
now takes me between 16 seconds and 18 seconds instead of between 23 seconds and 25 seconds if the cache is primed (22%-31% faster), and the code is clearer HistoricalDiary::SourceMaterialGenerator
now understands filenames with comma-separated dates (for example,_source_material/the private diary of dr john dee/1564-03-01,1593-03-01.md
will appear on both 1564-03-01 and 1593-03-01)HistoricalDiary::SourceMaterialGenerator
now extractsplaces
andsources
from source material, in addition topeople
andtags
- Update
theme_color
setting Person
class stripsunknown --
from person keys
Fixed
- Improve structure of person and source pages
- Fix CSS selector for highlighted person avatar
- Adjust
DataCollection#data_collection_record
to handle the case that thecollection_name
collection doesn't have a match forkey
- Adjust
HistoricalDiary::ManipulateDataGenerator
to handle case that source doesn't have aneditions
hash
Removed
- Remove
get_author_key
Liquid filter -- its function is better done with theattribute_from_object_or_source_record
filter
Release 1.0.9
Added
- Add text for some shorter entries and a few letters
- Add
attribute_from_record
Liquid tag to automatically resolve volumes, editions, etc. - Add ‘biography’ mechanism to show relevant information on person pages
- Set
logo
property in page header - Tag some additional people and add data
- Display person's full name and title on person page
- Copy tags from source material to
DayPage
Changed
- Replace
alternateType
in people data withaddtionalType
--additionalType
is aschema.org
property - Rebuild color palette for better contrast and easier maintenance
- Display day name on date page
Fixed
- Correctly tag
lang
attribute on source material - Handle case that ‘source’ data file is empty
- Increase color contrast for dark-mode year page to meet WCAG AA requirement
- Fix issues with page structure, identified by
axe-core
- Redo
prefers-contrast: more
overrides, after enablinglayout.css.prefers-contrast.enabled
in Firefox’sabout:config
Release 1.0.8
Added
- Letter from John Dee to William Langley on 1597-05-02
- Display commentary on year pages
- Add three days from Casaubon’s ‘True and Faithful Relation’ -- raw transcription without annotations.
- Add metadata for all entries from ‘True and Faithful Relation’
- Tag entries for Olbracht Łaski
Changed
- Year page generator’s
legal_year_dates
property is nowexpanded_legal_year_dates
, to convey it includes the full month of March on both ends - Adjust ‘missing content’ text to encourage contributions with a link to edit the file, and a link to the source
- Display ‘Context’ section on year page rather than date page -- in the future it would be ideal to have a concept of ‘relevance’, so a given item of commentary or context is considered relevant to a specific date (or set of dates), or to a year, and only shown in that context
- Use more robust lookup for
author_key
on date page - Use short day number on date page, rather than 0-padded
- Sort keys in
transclude
include
, to get more 'ibid's
Fixed
- Filter out duplicate related dates
- Handle case that no publication information is available in the
mla_citation
Liquid filter - Fix bugs that prevented
author_key
andrecipient_key
from being passed to thepeople
include
Removed
- Remove code that generated date pages if only commentary was available -- this is now handled in a better way by rendering the commentary on the year page
Release 1.0.7
Added
- Set
class
anddata-key
attributes on ‘Ibid.’ citations - Annotations for 1582-03-11 entry
- Add placeholder files for all other dates in Sloane MS 3188
- Provide a message for placeholder entries
- A few entries are copied in another hand -- add those page numbers to the relevant source files
- Initial transcript of 1582-03-21 entries
- Tag all source material related to Bartholomew Hickman, Jane Dee, Edward Kelley, Jane Kelley, and Thomas Kelley
- Add
dates_for_person
Liquid filter and display related dates on person page - Add
date_to_url
Liquid filter for converting RubyDate
andDateTime
objects to URLs to dates - Adjust person pages to display aliases and birth names
- Adjust markup/CSS to handle long lists of related dates
- Add
<meta>
tag for Google site verification - Add website icon
- Set
theme-color
for whatever happens to support it 🤷 - Add
escape_data_key
Liquid filter that wrapsDataCollection#escape_key
- Add letter from John Dee to King James on 1604-06-05
Changed
- Generation
destination
is now_site.nosync
--.nosync
prevents iCloud from syncing files - Render commentary markup before related dates & footnotes
- Use shorter titles for year & date pages
- Use
-
instead of·
in page title, to improve screenreader experience - Adjust date display in date page header
Fixed
- Safari 14 doesn’t support the
inset-inline-start
CSS property -- useleft
by default, and switch toinset-inline-start
when available. Note that this means the layout is not fully RTL-compatible in Safari unlessright
rules are added to compensate for reversed layout. - Person page and source page now use
<h2>
and<h3>
for proper hierarchy (reported by Bing) - Fix bug with logic for removing entry author from list of related people
- Dates with content on year page were being marked as
aria-hidden
- Reduce intensity of 'content'-indicating background-color on calendar to fix constrast issue
- Year-page link on date page was incorrect
- Handle case that
exact
selector is missing or empty - Handle case that
mla_citation
is given an emptylocation
- Handle case that publication date is a full date, not just a year
Release 1.0.6
Added
- Handle source material that has a
footnotes:
array in the front matter - Add
.terraform/
to Jekyll ignore list mla_citation
Liquid filter now prefers information from a specified volume, falling back to the edition, and finally to the work- Link to (calendar) year on date page
- Add references to Dee from ‘Calendar of State Papers, Domestic Series, of the reign of Elizabeth…’
- Add two letters from John Chamberlain to Dudley Carlton that reference John Dee, from ‘Letters written by John Chamberlain during the Reign of Queen Elizabeth’
- Annotate mentions of Adrian and Humphrey Gilbert
- Display ‘related dates’ on date pages
- Add letter from John Dee to William Cecil
- Fully annotate 1581-12-22 and 1582-03-10 entries, including illustrations
- Add stylized SVG rendering of illustrations from 1582-03-10 entries
- Add widget to display the list of people related to an entry
- Add
get_author_key
Liquid filter to automatically identify anauthor_key
based on the provided object, falling back to the volume, edition, and ‘work’ author of the object’s associated source record - Add
person_initials
Liquid filter that generates a string of graphemes representing the initials of a name - Add
person_reference
Liquid filter - Add
data_record_tag_attributes
Liquid filter that provides a consistent class name anddata-key
attribute so everything using theperson_reference
andperson_link
filters be connected - Add styling for
<em>
and<strong>
- Add JavaScript to display all
person_link
andperson_reference
s that point to the same record
Changed
- Remove
markdownify
filter fromentry
include
-- source material is raw text without Markdown formatting - Split 1582-03-10’s two sessions into separate files
- Refactor
person_link
Liquid filter to usedata_record_tag_attributes
annotate_content
Liquid filter now uses a Yaml file that matches the source material’s filename -- annotation files apply to at most one entry for a date, rather than all- Use
data_record_tag_attributes
Liquid filter inpeople
include - Improve CSS for
person-avatar
s
Fixed
- Code that called the
mla_citation
Liquid filter on date pages was using the incorrect variables for edition and volume annotate_content
Liquid filter now calls#clone
on content to avoid mutating content that will render on multiple days- In
HistoricalDiary::DataPage
, handle case that fetched record isnil
- Fix layout of
<sup>
footnote references - Fix ordering of color declarations in CSS
- Fix crashes in
DataCollection
methods when given an object that’s not a string - Layout is now entirely RTL-compatible
- Fix spelling of ‘Lundrumguffa’
- Extend
header
grid area by one column to fix collapsed column between primary and secondary content
Release 1.0.5
Added
- Generate a sitemap with
jekyll-sitemap
- Set
url
in_config.yml
to get valid<loc>
s in sitemap - Add three entries from Sloane MS 3188
- Add next/previous links on day pages
- Render day pages that have commentary but no source material
- Begin adding material from the ‘Autobiographical Tracts of Dr John Dee’
- Attempt transcription of Mercator’s letter to Dee regarding Rupes Nigra
- Add
LegalYear
module to simplify dealing with calendar-vs-legal year - Add letter from John Dee to Queen Elizabeth Ⅰ
- Add annotation mechanism to insert links and other markup in rendered source material
- Add annotations to entries regarding initial ‘Actions’ with Edward Kelley
- Use annotations to style signature on letters
Changed
- Update
README
to be more accurate and useful - Begin using a custom mix of diplomatic and semi-diplomatic transcription: see
README
’s ‘Conventions for transcribing manuscripts’ section for details - Make an
entry.html
include file with the contents of the date page’s<li>
loop
Fixed
- Change footer links to
LICENSE
andCONTRIBUTING
pages to use uppercase filenames - Set
last_modified_at
in metadata for year and day pages so Google will accept the sitemap - Adjust year pages to end on March 24th, not March 25th
- Put source publication date in
<time>
tag for screenreader - Add missing copyright header to data file
- Improve usability on mobile devices and small screens
- Index page now links years that have content for the legal year, rather than the calendar year
- Handle case that the key passed to
lifespan_years
doesn’t correspond to a record
Release 1.0.4
Added
- Generate a calendar page for each year, with a design based on the design of Apple’s Calendar app in macOS Big Sur
- Add
lifespan_years
Liquid filter that returns an array of the years a givenperson
was alive, if both the birth and death year are known - Index page now shows list of years, rather than a list of all the dates that have content
- Index page’s list of years is the
lifespan_years
ofsubject_person_key
in_config.yml
- Add
HistoricalDiaryPage
subclass ofJekyll::Page
- Set
has_source_material
property forHistoricalDiary::DayPage
- Add CSS for the
prefers-contrast: more
media query
Changed
- Rework CSS so all variables are grouped, and rules use aliases for colors instead of referencing them directly, making it easier to maintain the dark-mode variant
Fixed
- Only preload the Garamond font file for pages that need it, determined by a
has_source_material
property in a page’sdata
- Add
crossorigin
attribute to font preload -- otherwise the browser won’t use it - Site is now usable on mobile screens
- Improve accessibility and HTML standards compliance