Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Upgrade ruby/gems/javascript #291

Merged
merged 1 commit into from
Jan 22, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
FROM ruby:3.2-bookworm
FROM ruby:3.3-bookworm

RUN apt-get update \
&& apt-get install -y --quiet --no-install-recommends \
Expand All @@ -7,7 +7,7 @@ RUN apt-get update \
ENV GEM_HOME=/usr/gem
ENV PATH="$GEM_HOME/bin/:$PATH"

RUN gem install bundler -v '2.4.12'
RUN gem install bundler -v '2.6.3'
# throw errors if Gemfile has been modified since Gemfile.lock
RUN bundle config --global frozen 1

Expand Down
72 changes: 40 additions & 32 deletions Gemfile.lock
Original file line number Diff line number Diff line change
@@ -1,27 +1,31 @@
GEM
remote: https://rubygems.org/
specs:
addressable (2.8.4)
public_suffix (>= 2.0.2, < 6.0)
addressable (2.8.7)
public_suffix (>= 2.0.2, < 7.0)
bigdecimal (3.1.9)
colorator (1.1.0)
concurrent-ruby (1.2.2)
concurrent-ruby (1.3.5)
em-websocket (0.5.3)
eventmachine (>= 0.12.9)
http_parser.rb (~> 0)
eventmachine (1.2.7)
eventmachine (1.2.7-x64-mingw32)
faraday (2.7.4)
faraday-net_http (>= 2.0, < 3.1)
ruby2_keywords (>= 0.0.4)
faraday-net_http (3.0.2)
ffi (1.15.5)
ffi (1.15.5-x64-mingw32)
faraday (2.12.2)
faraday-net_http (>= 2.0, < 3.5)
json
logger
faraday-net_http (3.4.0)
net-http (>= 0.5.0)
ffi (1.17.1)
forwardable-extended (2.6.0)
google-protobuf (3.22.3)
google-protobuf (4.29.3)
bigdecimal
rake (>= 13)
http_parser.rb (0.8.0)
i18n (1.12.0)
i18n (1.14.7)
concurrent-ruby (~> 1.0)
jekyll (4.3.2)
jekyll (4.3.4)
addressable (~> 2.4)
colorator (~> 1.0)
em-websocket (~> 0.5)
Expand All @@ -37,7 +41,7 @@ GEM
safe_yaml (~> 1.0)
terminal-table (>= 1.8, < 4.0)
webrick (~> 1.7)
jekyll-github-metadata (2.16.0)
jekyll-github-metadata (2.16.1)
jekyll (>= 3.4, < 5.0)
octokit (>= 4, < 7, != 4.4.0)
jekyll-paginate-v2 (3.0.0)
Expand All @@ -50,43 +54,47 @@ GEM
jekyll (>= 3.3, < 5.0)
jekyll-watch (2.2.1)
listen (~> 3.0)
kramdown (2.4.0)
rexml
json (2.9.1)
kramdown (2.5.1)
rexml (>= 3.3.9)
kramdown-parser-gfm (1.1.0)
kramdown (~> 2.0)
liquid (4.0.4)
listen (3.8.0)
listen (3.9.0)
rb-fsevent (~> 0.10, >= 0.10.3)
rb-inotify (~> 0.9, >= 0.9.10)
logger (1.6.5)
mercenary (0.4.0)
net-http (0.6.0)
uri
octokit (6.1.1)
faraday (>= 1, < 3)
sawyer (~> 0.9)
pathutil (0.16.2)
forwardable-extended (~> 2.6)
public_suffix (5.0.1)
rake (13.0.6)
public_suffix (6.0.1)
rake (13.2.1)
rb-fsevent (0.11.2)
rb-inotify (0.10.1)
rb-inotify (0.11.1)
ffi (~> 1.0)
rexml (3.2.5)
rouge (4.1.0)
ruby2_keywords (0.0.5)
rexml (3.4.0)
rouge (4.5.1)
safe_yaml (1.0.5)
sass-embedded (1.62.0)
google-protobuf (~> 3.21)
rake (>= 10.0.0)
sass-embedded (1.62.0-x64-mingw32)
google-protobuf (~> 3.21)
sass-embedded (1.62.0-x86_64-linux-gnu)
google-protobuf (~> 3.21)
sass-embedded (1.83.4)
google-protobuf (~> 4.29)
rake (>= 13)
sass-embedded (1.83.4-x64-mingw32)
google-protobuf (~> 4.29)
sass-embedded (1.83.4-x86_64-linux-gnu)
google-protobuf (~> 4.29)
sawyer (0.9.2)
addressable (>= 2.3.5)
faraday (>= 0.17.3, < 3)
terminal-table (3.0.2)
unicode-display_width (>= 1.1.1, < 3)
unicode-display_width (2.4.2)
webrick (1.8.1)
unicode-display_width (2.6.0)
uri (1.0.2)
webrick (1.9.1)

PLATFORMS
ruby
Expand All @@ -101,4 +109,4 @@ DEPENDENCIES
jekyll-titles-from-headings

BUNDLED WITH
2.4.12
2.6.3
2 changes: 1 addition & 1 deletion docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ services:
environment:
- JEKYLL_ENV=development
- LANG=C.UTF-8
command: jekyll serve --watch --incremental --host 0.0.0.0
command: bundle exec jekyll serve --watch --incremental --host 0.0.0.0
ports:
- "4000:4000"
volumes:
Expand Down
6 changes: 3 additions & 3 deletions docs/architecture.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ JKAN is a [Jekyll](http://jekyllrb.com/) site that uses JavaScript for enhanced
| `_config.yml` | [Jekyll config file](http://jekyllrb.com/docs/configuration/) |
| `data.json` | Generates a [project open data](https://project-open-data.cio.gov/v1.1/schema/)-compliant `data.json` file that can be used to harvest the JKAN site into other data catalogs. |
| `datasets.json` | Generates a list of datasets used to populate the `datasets-list` component (as seen on the `/datasets/` page). |
| `_data/schemas` | [Schema definition files](/docs/configuration.md), which list the fields each dataset, category, and organization should have. |
| `_data/schemas` | Schema definition files which list the fields each dataset, category, and organization should have. |
| `_data/licenses.yml` | A list of licenses that datasets can be associated with |
| `_datasets` | A directory of `.md` files containing dataset information in YAML front-matter |
| `_dataset_categories` | A directory of `.md` files containing dataset categories in YAML front-matter |
Expand Down Expand Up @@ -65,7 +65,7 @@ For example, if there is a `<div data-component="navigation">` on the page, `com

A component is just an [ES6 class](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Classes). They typically have a `constructor` method so they can use the variables they are passed. They can extend other components, but they don't have to.

By convention, elements within a component's HTML markup that need to be referenced by JavaScript are designated using a `data-hook` attribute, an idea [borrowed from ampersand.js](https://ampersandjs.com/learn/data-hook-attribute/) that helps keep styling and JavaScript concerns separate. For example, the `datasets-list` component looks for 3 elements within it: a place to put the count of datasets, a search box, and the place to list the dataset items themselves.
By convention, elements within a component's HTML markup that need to be referenced by JavaScript are designated using a `data-hook` attribute, an idea [borrowed from ampersand.js](https://web.archive.org/web/20220808092409/https://ampersandjs.com/learn/data-hook-attribute/) that helps keep styling and JavaScript concerns separate. For example, the `datasets-list` component looks for 3 elements within it: a place to put the count of datasets, a search box, and the place to list the dataset items themselves.

```html
<div data-component="datasets-list">
Expand All @@ -78,7 +78,7 @@ By convention, elements within a component's HTML markup that need to be referen

## Decap CMS

[Decap CMS](https://decapcms.org) (formerly Decap CMS) is a headless content management system for static sites. JKAN used to have its own built-in editing UI, but now we use Decap. There are only two files involved in configuring Decap CMS, and they're both in the `editor` directory:
[Decap CMS](https://decapcms.org) is a headless content management system for static sites. JKAN used to have its own built-in editing UI, but now we use Decap. There are only two files involved in configuring Decap CMS, and they're both in the `editor` directory:
```
editor
├── index.html
Expand Down
Loading
Loading