Hugo 0.94.0 Released

This is a good one, spread the news.

15 Likes

20% faster can’t wait for the brew release :star_struck: to test a news site which previously did around 6 minutes.

special thanks :pray: to @jmooring for changing the default behaviour of empty space.

Hugo 0.94.0 packages

Brew - Hugo Brew package for macOS and Linux - updated :white_check_mark:
Snap Package - Hugo Snap (Snapcraft) package for Linux

  • traditional release - updated :white_check_mark:
  • extended release - updated :white_check_mark:

Docker/CI Image - Hugo Docker image for Continuous Integration - updated :white_check_mark:
Docker Image - klakegg/hugo - Other Hugo Docker image - not yet updated :x:
Debian (sid) - not yet updated :x: (Track link)
Ubuntu (hirsute) - not yet updated :x: (Track link )
Fedora Copr - Hugo RPM package for Fedora and CentOS - not yet updated :x:
Chocolatey Package - Hugo Chocolatey package for Windows

3 Likes

Looking for your feedback. Also waiting for brew to start testing other sites.

1 Like

wow so here are the results I see

Start building sites … 
hugo v0.93.3+extended darwin/amd64 BuildDate=unknown

                   | EN  
-------------------+-----
  Pages            | 13  
  Paginator pages  |  0  
  Non-page files   |  1  
  Static files     | 38  
  Processed images |  0  
  Aliases          |  0  
  Sitemaps         |  1  
  Cleaned          |  0  

Built in 7902 ms
Start building sites … 
hugo v0.94.0+extended darwin/amd64 BuildDate=unknown

                   | EN  
-------------------+-----
  Pages            | 13  
  Paginator pages  |  0  
  Non-page files   |  1  
  Static files     | 38  
  Processed images |  0  
  Aliases          |  0  
  Sitemaps         |  1  
  Cleaned          |  0  

Built in 6818 ms

An image heavy Hugo site:

Start building sites … 
hugo v0.92.2+extended darwin/amd64 BuildDate=unknown

                   |  EN  | EL  
-------------------+------+-----
  Pages            |   17 | 16  
  Paginator pages  |    0 |  0  
  Non-page files   |    4 |  1  
  Static files     |   46 | 46  
  Processed images | 1151 | 24  
  Aliases          |    1 |  0  
  Sitemaps         |    2 |  1  
  Cleaned          |    0 |  0  

Built in 9761 ms
Start building sites … 
hugo v0.94.0+extended darwin/amd64 BuildDate=unknown

                   |  EN  | EL  
-------------------+------+-----
  Pages            |   17 | 16  
  Paginator pages  |    0 |  0  
  Non-page files   |    4 |  1  
  Static files     |   46 | 46  
  Processed images | 1149 | 24  
  Aliases          |    1 |  0  
  Sitemaps         |    2 |  1  
  Cleaned          |    0 |  0  

Built in 6991 ms

I can verify the speed increase almost upto 30% on some sites when running the simple Hugo server. amazing work :clap:

1 Like

hugo

There is visible improvement on local deployment on my end as well but whats more reliable is to get this tested in production.

Here is mine on netlify for

7:25:40 PM: hugo v0.93.2-643B5AE9+extended linux/amd64 BuildDate=2022-03-04T12:21:49Z VendorInfo=gohugoio
7:25:57 PM:                    |  PL  | EN
7:25:57 PM: -------------------+------+------
7:25:57 PM:   Pages            | 3192 | 365
7:25:57 PM:   Paginator pages  |  237 |  19
7:25:57 PM:   Non-page files   | 2523 |   0
7:25:57 PM:   Static files     |   12 |  12
7:25:57 PM:   Processed images |    0 |   0
7:25:57 PM:   Aliases          | 1515 | 168
7:25:57 PM:   Sitemaps         |    2 |   1
7:25:57 PM:   Cleaned          |    0 |   0
7:25:57 PM: Total in 17047 ms
4:04:45 PM: hugo v0.94.0-63B23660+extended linux/amd64 BuildDate=2022-03-10T09:46:36Z VendorInfo=gohugoio
4:04:49 PM:                    |  PL  | EN
4:04:49 PM: -------------------+------+------
4:04:49 PM:   Pages            | 3192 | 365
4:04:49 PM:   Paginator pages  |  237 |  19
4:04:49 PM:   Non-page files   | 2523 |   0
4:04:49 PM:   Static files     |   12 |  12
4:04:49 PM:   Processed images |    0 |   0
4:04:49 PM:   Aliases          | 1515 | 168
4:04:49 PM:   Sitemaps         |    2 |   1
4:04:49 PM:   Cleaned          |    0 |   0
4:04:49 PM: Total in 3984 ms

So yeah, you can see the difference.

11:14:08 AM: $ hugo --gc --minify
11:14:08 AM: Start building sites …
11:14:08 AM: hugo v0.93.2-643B5AE9+extended linux/amd64 BuildDate=2022-03-04T12:21:49Z VendorInfo=gohugoio
11:14:18 AM:                    |  EN
11:14:18 AM: -------------------+-------
11:14:18 AM:   Pages            | 1926
11:14:18 AM:   Paginator pages  |  149
11:14:18 AM:   Non-page files   | 1191
11:14:18 AM:   Static files     |   11
11:14:18 AM:   Processed images |    0
11:14:18 AM:   Aliases          |  971
11:14:18 AM:   Sitemaps         |    1
11:14:18 AM:   Cleaned          |    0
11:14:18 AM: Total in 10156 ms
3:59:44 PM: hugo v0.94.0-63B23660+extended linux/amd64 BuildDate=2022-03-10T09:46:36Z VendorInfo=gohugoio
3:59:46 PM:                    |  EN
3:59:46 PM: -------------------+-------
3:59:46 PM:   Pages            | 1926
3:59:46 PM:   Paginator pages  |  149
3:59:46 PM:   Non-page files   | 1191
3:59:46 PM:   Static files     |   11
3:59:46 PM:   Processed images |    0
3:59:46 PM:   Aliases          |  971
3:59:46 PM:   Sitemaps         |    1
3:59:46 PM:   Cleaned          |    0
3:59:46 PM: Total in 2307 ms
8:33:30 PM: $ hugo --gc --minify
8:33:30 PM: Start building sites …
8:33:30 PM: hugo v0.93.2-643B5AE9+extended linux/amd64 BuildDate=2022-03-04T12:21:49Z VendorInfo=gohugoio
8:33:37 PM:                    |  PL
8:33:37 PM: -------------------+-------
8:33:37 PM:   Pages            | 1975
8:33:37 PM:   Paginator pages  |  234
8:33:37 PM:   Non-page files   | 1099
8:33:37 PM:   Static files     |   84
8:33:37 PM:   Processed images |    0
8:33:37 PM:   Aliases          |  818
8:33:37 PM:   Sitemaps         |    1
8:33:37 PM:   Cleaned          |    0
8:33:37 PM: Total in 6895 ms
4:02:50 PM: hugo v0.94.0-63B23660+extended linux/amd64 BuildDate=2022-03-10T09:46:36Z VendorInfo=gohugoio
4:02:53 PM:                    |  PL
4:02:53 PM: -------------------+-------
4:02:53 PM:   Pages            | 1975
4:02:53 PM:   Paginator pages  |  234
4:02:53 PM:   Non-page files   | 1099
4:02:53 PM:   Static files     |   84
4:02:53 PM:   Processed images |    0
4:02:53 PM:   Aliases          |  818
4:02:53 PM:   Sitemaps         |    1
4:02:53 PM:   Cleaned          |    0
4:02:53 PM: Total in 2599 ms

BTW
really pleased that linkifyProtocol is set to https by default and language in template for alias redirects.

4 Likes

what this is an average of 70% difference almost twice the speed!

Build time dropped from 18.6 seconds to 13.7 :confetti_ball:, but the diff output compared to 0.93.3 was massive due to the pretty-printing of every meta-refresh page (I have ~3,000 aliases referencing the old MovableType structure of my blog, plus the usual pagination aliases):

hugo v0.94.0-63B23660 darwin/amd64 BuildDate=2022-03-10T09:46:36Z VendorInfo=gohugoio

                   |  EN   
-------------------+-------
  Pages            | 5842  
  Paginator pages  | 1190  
  Non-page files   |   92  
  Static files     |  100  
  Processed images |    0  
  Aliases          | 2849  
  Sitemaps         |    0  
  Cleaned          |    0  

Total in 13682 ms

The site is functionally identical, but page aliases are now 10 lines of neatly-indented HTML instead of a one-liner with no newline at the end.

-j

3 Likes

Yea, well – I thought a little before merging that PR, but it’s certainly much easier to maintain a neatly-indented template and the minifier has starting to behave lately.

4 Likes

Pretty spiffy!

2 Likes

You can dig up the old template here and copy it into you layouts folder:

Thanks. I’m good with the change, I just called it out because the extra 40,000 lines of diff output made it more difficult to confirm that my site was still building correctly.

-j

2 Likes

There was an unfortunate upstream regression brought to our attention by @bugsysailor.

If you have this in your site configuration:

[markup.goldmark.renderer]
unsafe = true

And your markdown contains an inline HTML comment such as:

Thank goodness <!-- no one will ever see this -->.

The comment will be visible on the rendered page:

image

This was introduced in v0.93.3, and the upstream maintainer of the markdown renderer is now aware of the regression.

6 Likes

Very impressed by the speed upgrades!

                   | EN
-------------------+------
  Pages            | 684
  Paginator pages  |   0
  Non-page files   | 196
  Static files     | 112
  Processed images | 700
  Aliases          |   0
  Sitemaps         |   0
  Cleaned          |   0

Total in 4793 ms


                   | EN   
-------------------+------
  Pages            | 684
  Paginator pages  |   0
  Non-page files   | 196
  Static files     | 112
  Processed images | 700
  Aliases          |   0
  Sitemaps         |   0
  Cleaned          |   0

Total in 1308 ms



                   |  EN  |  BE  |  NL  |  ES  |  DE
-------------------+------+------+------+------+-------
  Pages            |  268 |  251 |  458 |  222 |  220
  Paginator pages  |    4 |    2 |   14 |    2 |    2
  Non-page files   | 1055 | 1056 | 1307 |  982 | 1018
  Static files     |   70 |   70 |   70 |   70 |   70
  Processed images | 2049 | 1897 | 3355 | 1377 | 1627
  Aliases          |   17 |   15 |   21 |   11 |    4
  Sitemaps         |    2 |    1 |    1 |    1 |    1
  Cleaned          |    0 |    0 |    0 |    0 |    0

Total in 13491 ms


                   |  EN  |  BE  |  NL  |  ES  |  DE
-------------------+------+------+------+------+-------
  Pages            |  268 |  251 |  458 |  222 |  220
  Paginator pages  |    4 |    2 |   14 |    2 |    2
  Non-page files   | 1055 | 1056 | 1307 |  982 | 1018
  Static files     |   70 |   70 |   70 |   70 |   70
  Processed images | 1899 | 1867 | 3262 | 1342 | 1628
  Aliases          |   17 |   15 |   21 |   11 |    4
  Sitemaps         |    2 |    1 |    1 |    1 |    1
  Cleaned          |    0 |    0 |    0 |    0 |    0

Total in 7172 ms
2 Likes

@frankspin89 can I ask you what hardware you ran your tests? I ask because I does not notice that big of an improvement on my MacBook, and I suspect that the nature of the “performance patch” I applied in 0.94.0 does not have that big of an effect on beefier hardware (I have one of the newer MacBook M1 Pro’s with 32 GB of memory).

2 Likes

@bep

  • Windows 11 Pro
  • AMD Ryzen 5 5600X 6-Core Processor, 3701 Mhz, 6 Core(s), 12 Logical Processor(s)
  • ROG STRIX B550-F GAMING (WI-FI)
  • Nvidia Gefore rtx 3070
  • 64 GB memory
2 Likes

Looks as if @yuin pushed a fix for this in the goldmark repo. 0.94.1 incoming? :grinning:

@frankspin89 that’s some impressive hardware!

@bwintx I think the Hugo Release Team has taken an early weekend.

2 Likes

And well-deserved (the early weekend, I mean).