Bjørn Erik Pedersen
f3560aa0e1
server: Fix 404 redirects on Windows
...
Fixes #10314
2022-09-23 13:07:56 +02:00
Bjørn Erik Pedersen
08f0984f91
commands: Skip flaky test on CI
2022-09-22 11:24:42 +02:00
Bjørn Erik Pedersen
6be6752c8a
server: Fix redirects when file path contains bytes > 0x80
...
Fixes #10287
2022-09-18 15:16:11 +02:00
Bjørn Erik Pedersen
74daca6b30
Support PostProcess for all file types
...
Not just HTML.
Fixes #10269
2022-09-14 19:09:20 +02:00
Bjørn Erik Pedersen
a5cda5ca4d
server: Add 404 support
2022-09-14 14:25:33 +02:00
satotake
ab5ce59894
Fix usage description
2022-09-08 15:35:11 +02:00
satotake
7d40da876c
Add --force
to hugo new
...
Closes #9243
2022-09-08 15:35:11 +02:00
Bjørn Erik Pedersen
45e1084ff2
Add linux/arm64 extended to release setup
...
Fixes #8257
2022-08-28 18:23:01 +02:00
Bjørn Erik Pedersen
35fa192838
deps: Udpate to github.com/alecthomas/chroma/v2
...
Fixes #9932
Fixes #9931
2022-06-14 14:08:40 +02:00
Bjørn Erik Pedersen
cbc35c48d2
Respect NO_COLOR
...
Fixes #10004
2022-06-13 18:07:37 +02:00
Paul van Brouwershaven
c7d5f9f067
resources: Register MediaTypes before build
...
Fixes #9971
2022-06-03 21:37:50 +02:00
Bjørn Erik Pedersen
653ab2cc1f
commands: Fix case where languages cannot be configured
...
There are some commands that needs to complete without a complete configuration.
2022-05-27 13:34:20 +02:00
Bjørn Erik Pedersen
8ca7052528
server: Skip watching dirs in ignoreFiles
...
Fixes #9838
2022-05-25 18:31:00 +02:00
satotake
6f7fbe03b1
basefs: add noBuildLock
flag
...
If the flag is enabled, `.hugo_build.lock` will not be created.
This ensures safe running on read-only filesystem etc.
Close #9780
2022-05-24 13:57:23 +02:00
satotake
2fc2e9c871
import: Fix importing jekyll site
...
Just use `afero.OsFs` without building site.
Close #9817
2022-05-21 23:44:40 +02:00
Bjørn Erik Pedersen
2f9eac480f
server: Fix multihost crash
...
As introduced in v0.99.0.
Fixes #9901
2022-05-18 11:10:04 +02:00
Bjørn Erik Pedersen
657d1a2d95
server: Refresh the error template
...
We cannot cache it forever, as that will not allow the end user to edit and preview it.
2022-05-16 09:24:30 +02:00
Bjørn Erik Pedersen
87a22eb6d6
server: Fix SIGINT handling after loading bad configuration
...
Also fix the config error messages.
Fixes #9664
2022-05-15 22:58:05 +02:00
Bjørn Erik Pedersen
fc9f315d86
Improve SASS errors
...
Fixes #9897
2022-05-15 20:25:25 +02:00
Bjørn Erik Pedersen
5c96bda70a
errors: Misc improvements
...
* Redo the server error template
* Always add the content file context if relevant
* Remove some now superflous error string matching
* Move the server error template to _server/error.html
* Add file context (with position) to codeblock render blocks
* Improve JS build errors
Fixes #9892
Fixes #9891
Fixes #9893
2022-05-14 13:40:56 +02:00
Bjørn Erik Pedersen
4a96df96d9
server: Always rebuild the files involved in an error
...
Fixes #9884
2022-05-14 13:40:56 +02:00
Bjørn Erik Pedersen
51f08b0b6a
Revise the use of htime.Since/htime.Now
...
We cannot (also, it doesn't add any value) use that when the `clock` is set,
* To measure time (before that global is set)
* To compare file timestamps re cache eviction
Fixes #9868
2022-05-09 14:18:40 +02:00
Bjørn Erik Pedersen
35c88a7f90
Use configured timeZone for the clock
...
And some other related adjustments.
Updates #8787
2022-05-08 16:56:26 +02:00
satotake
e77ca3c105
Add clock
cli flag
...
Close #8787
2022-05-08 16:56:26 +02:00
Bjørn Erik Pedersen
f2946da9e8
Improve error messages, esp. when the server is running
...
* Add file context to minifier errors when publishing
* Misc fixes (see issues)
* Allow custom server error template in layouts/server/error.html
To get to this, this commit also cleans up and simplifies the code surrounding errors and files. This also removes the usage of `github.com/pkg/errors`, mostly because of https://github.com/pkg/errors/issues/223 -- but also because most of this is now built-in to Go.
Fixes #9852
Fixes #9857
Fixes #9863
2022-05-06 19:43:22 +02:00
Bjørn Erik Pedersen
9b352f04a3
Fix syncing of /static regression
...
As introduced in Hugo `v0.76.1`.
And add a proper test for it.
Fixes #9794
Closes #9788
2022-04-18 19:17:27 +02:00
Bjørn Erik Pedersen
e66e2e9ce5
Revert "Revert "Fix PostProcess regression for hugo server""
...
This reverts commit 6c35a1a9ea
.
Updates #9794
2022-04-18 19:17:27 +02:00
Bjørn Erik Pedersen
6c35a1a9ea
Revert "Fix PostProcess regression for hugo server"
...
This reverts commit 4deb5c6066
.
2022-04-17 10:35:01 +02:00
Bjørn Erik Pedersen
4deb5c6066
Fix PostProcess regression for hugo server
...
Fixes #9788
2022-04-16 18:43:13 +02:00
Bjørn Erik Pedersen
d070bdf10f
Rework the Destination filesystem to make --renderStaticToDisk work
...
See #9626
2022-04-08 13:26:17 +02:00
Bjørn Erik Pedersen
b08193971a
Revert "Revert "Some minor adjustments to the new static filesystem logic""
...
This reverts commit 5ef8a9f32c
.
2022-04-08 13:26:17 +02:00
Bjørn Erik Pedersen
0a56f2af4e
Revert "Revert "Allow rendering static files to disk and dynamic to memory in server mode""
...
This reverts commit 64b7b7a897
.
2022-04-08 13:26:16 +02:00
Joe Mooring
a6fa290f67
commands: Change link protocol to https
2022-03-25 15:29:50 +01:00
Bjørn Erik Pedersen
9539069f5e
commands: Improve server startup to make tests less flaky
...
Do this by announcing/listen on the local address before we start the server.
2022-03-21 09:32:35 +01:00
Bjørn Erik Pedersen
b80853de90
all: gofmt -w -r 'interface{} -> any' .
...
Updates #9687
2022-03-17 22:03:27 +01:00
Bjørn Erik Pedersen
31fbc081c9
Improve server startup/shutdown
...
Closes #9671
2022-03-14 19:38:17 +01:00
Bjørn Erik Pedersen
cebd886ac1
commands: Improve server tests
...
Updates #9647
2022-03-14 09:16:33 +01:00
Bjørn Erik Pedersen
64b7b7a897
Revert "Allow rendering static files to disk and dynamic to memory in server mode"
...
This reverts commit 7d8011ed63
.
Updates #9647
2022-03-11 13:10:47 +01:00
Bjørn Erik Pedersen
5ef8a9f32c
Revert "Some minor adjustments to the new static filesystem logic"
...
This reverts commit 63bb2a5b18
.
2022-03-11 13:10:47 +01:00
Bjørn Erik Pedersen
63bb2a5b18
Some minor adjustments to the new static filesystem logic
...
Closes #9625
2022-03-08 19:27:54 +01:00
SatowTakeshi
7d8011ed63
Allow rendering static files to disk and dynamic to memory in server mode
...
Updates #9625
2022-03-08 19:27:54 +01:00
Marshall Cottrell
06bac57ab0
Add support for CODEOWNERS
...
Fixes #9474
2022-02-23 22:43:19 +01:00
Bjørn Erik Pedersen
aebde49b88
commands: Fix server panic regression
...
And now with a proper server test.
Fixes #9518
Fixes #9530
Fixes #9539
2022-02-21 21:43:26 +01:00
Bjørn Erik Pedersen
f2e7b49acf
Add --printUnusedTemplates
...
Fixes #9502
2022-02-15 20:01:57 +01:00
Bjørn Erik Pedersen
837fdfdf45
commands: Rename --i18n-warnings to printI18nWarnings
...
To get it in line with the others.
2022-02-15 13:03:36 +01:00
Bjørn Erik Pedersen
6819feab6c
commands: Rename --path-warnings, --print-men to --printPathWarnings, --printMemoryUsage
...
To get it in line with the others.
2022-02-15 13:00:06 +01:00
Bjørn Erik Pedersen
a2a660ed12
commands: Fix server deadlock on config error
...
Fixes #9486
2022-02-10 19:43:47 +01:00
Joe Mooring
54f8d8a70a
Remove the "check" command
...
Closes #9454
2022-02-10 16:25:23 +01:00
Joe Mooring
3336762939
Remove hugo gen autocomplete
...
Closes #8862
2022-02-01 23:23:30 +01:00
Bjørn Erik Pedersen
e334a40661
commands: Fix CLI help text for hugo new
...
Updates #9363
2022-01-07 12:36:12 +01:00
Bjørn Erik Pedersen
c8b5ab75b7
Add --panicOnWarning flag
...
Fixes #9357
Fixes #9359
2022-01-06 12:27:04 +01:00
Bjørn Erik Pedersen
2b6063c3e3
Misc depreation updates
...
* Deprecate .Page.Path when backed by a file
* site.Permalinks
* --ignoreVendor (use --ignoreVendorPaths)
Closes #9348
Closes #9349
2022-01-04 17:10:39 +01:00
Bjørn Erik Pedersen
fdad91fd96
commands: Make sure pollInterval is always set
...
Fixes #9165
2021-11-13 21:45:51 +01:00
Bjørn Erik Pedersen
ab5c6990a5
commands: Fix missing file locking in server partial render
...
Fixes #9162
2021-11-12 09:29:04 +01:00
Bjørn Erik Pedersen
096f5e1921
Fix the "page picker" logic in --navigateToChanged
...
Fixes #9051
2021-10-18 12:13:13 +02:00
Bjørn Erik Pedersen
ba35e69856
Add a cross process build lock and use it in the archetype content builder
...
Fixes #9048
2021-10-18 12:13:13 +02:00
Bjørn Erik Pedersen
9185e11eff
Reimplement archetypes
...
The old implementation had some issues, mostly related to the context (e.g. name, file paths) passed to the template.
This new implementation is using the exact same code path for evaluating the pages as in a regular build.
This also makes it more robust and easier to reason about in a multilingual setup.
Now, if you are explicit about the target path, Hugo will now always pick the correct mount and language:
```bash
hugo new content/en/posts/my-first-post.md
```
Fixes #9032
Fixes #7589
Fixes #9043
Fixes #9046
Fixes #9047
2021-10-16 15:22:03 +02:00
Bjørn Erik Pedersen
13ad8408fc
commands: Make the error handling for the mod commands more lenient
...
So it at least is possible to do a `hugo mod clean --all` if the cache is in a funky state.
2021-09-17 17:16:34 +02:00
Bjørn Erik Pedersen
7d1f806ecb
commands: Don't fail on template errors on go mod graph etc.
...
Fixes #8942
2021-08-31 22:16:12 +02:00
Bjørn Erik Pedersen
a0489c2dfd
Avoid failing with "module not found" for hugo mod init and similar
...
Fixes #8940
2021-08-31 12:08:11 +02:00
Bjørn Erik Pedersen
ffa2fe6117
Revert "commands: Avoid too many watch file handles causing the server to fail to start"
...
This reverts commit 3f38c785b7
.
2021-08-21 16:32:20 +02:00
Helder Pereira
d966f5d08d
highlight: Remove some pygments references
2021-08-21 15:50:49 +02:00
Shiming Zhang
3f38c785b7
commands: Avoid too many watch file handles causing the server to fail to start
...
Fixes #8904
2021-08-19 11:04:09 +02:00
Bjørn Erik Pedersen
58b6742cfe
Import time/tzdata on Windows
...
Updates #8892
2021-08-14 12:09:41 +02:00
Bjørn Erik Pedersen
a3701e0931
Switch to go-toml v2
...
We have been using `go-toml` for language files only. This commit makes it the only TOML library.
It's spec compliant and very fast.
A benchark building a site with 200 pages with TOML front matter:
```bash
name old time/op new time/op delta
SiteNew/Regular_TOML_front_matter-16 48.5ms ± 1% 47.1ms ± 1% -2.85% (p=0.029 n=4+4)
name old alloc/op new alloc/op delta
SiteNew/Regular_TOML_front_matter-16 16.9MB ± 0% 16.7MB ± 0% -1.56% (p=0.029 n=4+4)
name old allocs/op new allocs/op delta
SiteNew/Regular_TOML_front_matter-16 302k ± 0% 296k ± 0% -2.20% (p=0.029 n=4+4)
```
Note that the front matter unmarshaling is only a small part of building a site, so the above is very good.
Fixes #8801
2021-07-28 11:51:13 +02:00
Bjørn Erik Pedersen
351ed0f569
commands: Fix panic on invalid config in "hugo mod get" and similar
...
Fixes #8773
2021-07-20 18:23:09 +02:00
Bjørn Erik Pedersen
022c479551
hugofs: Make FileMeta a struct
...
This commit started out investigating a `concurrent map read write` issue, ending by replacing the map with a struct.
This is easier to reason about, and it's more effective:
```
name old time/op new time/op delta
SiteNew/Regular_Deep_content_tree-16 71.5ms ± 3% 69.4ms ± 5% ~ (p=0.200 n=4+4)
name old alloc/op new alloc/op delta
SiteNew/Regular_Deep_content_tree-16 29.7MB ± 0% 27.9MB ± 0% -5.82% (p=0.029 n=4+4)
name old allocs/op new allocs/op delta
SiteNew/Regular_Deep_content_tree-16 313k ± 0% 303k ± 0% -3.35% (p=0.029 n=4+4)
```
See #8749
2021-07-15 17:14:26 +02:00
John Hollowell
04dc469fbd
commands: Move time notification to after any build errors
...
This allows error parsers (VSCode problemMatchers) to use the time notification as bounds for detecting errors.
Closes #8403
2021-07-05 10:38:54 +02:00
Bjørn Erik Pedersen
e31b1d1946
commands: Make the --poll flag a duration
...
So you can do:
```
hugo server --poll 700ms
```
See #8720
2021-07-05 10:23:29 +02:00
Bjørn Erik Pedersen
24ce98b6d1
Add polling as a fallback to native filesystem events in server watch
...
Fixes #8720
Fixes #6849
Fixes #7930
2021-07-04 16:12:28 +02:00
Bjørn Erik Pedersen
3a6dc6d3f4
modules: Use value type for module.Time
...
Which is in line with how we do it elsewhere.
2021-06-27 18:06:52 +02:00
Bjørn Erik Pedersen
6cd2110ab2
commands: Add version time to "hugo config mounts"
2021-06-27 18:00:20 +02:00
Bjørn Erik Pedersen
6a365c2712
commands: Add some more info to "hugo config mounts"
...
* Add owner path and version.
* Also add thme meta info and Hugo version when run with -v flag
2021-06-27 16:08:28 +02:00
Bjørn Erik Pedersen
93aad3c543
Split out the puthe path/filepath functions into common/paths
...
So they can be used from the config package without cyclic troubles.
Updates #8654
2021-06-18 10:55:00 +02:00
Bjørn Erik Pedersen
31fb29fb3f
Do not read config from os.Environ when running tests
...
Fixes #8655
2021-06-16 18:58:40 +02:00
Bjørn Erik Pedersen
d392893cd7
Misc config loading fixes
...
The main motivation behind this is simplicity and correctnes, but the new small config library is also faster:
```
BenchmarkDefaultConfigProvider/Viper-16 252418 4546 ns/op 2720 B/op 30 allocs/op
BenchmarkDefaultConfigProvider/Custom-16 450756 2651 ns/op 1008 B/op 6 allocs/op
```
Fixes #8633
Fixes #8618
Fixes #8630
Updates #8591
Closes #6680
Closes #5192
2021-06-14 17:00:32 +02:00
Bjørn Erik Pedersen
f55d2f4376
tpl/fmt: Add erroridf template func
...
Fixes #8613
2021-06-07 19:11:03 +02:00
Joe Mooring
76c95f55a5
Display version when building site ( #8533 )
...
Closes #8531
2021-05-14 16:45:13 +02:00
Bjørn Erik Pedersen
4227cc1bd3
commands: Remove all dates from gendoc
...
It creates lots of diffs even if there are no changes.
2021-05-01 12:03:56 +02:00
Bjørn Erik Pedersen
9b83f45b6d
Add complete dependency list in "hugo env -v"
...
Fixes #8400
2021-04-09 08:07:22 +02:00
Avinash Sonawane
24c716cac3
Fix new theme
command description
...
`hugo new theme foo` creates theme `foo` in `./themes` and not in current directory.
2021-03-14 18:47:23 +01:00
Bjørn Erik Pedersen
c8f45d1d86
commands: Fix autocomplete docs
2021-02-20 14:08:51 +01:00
Anthony Fok
5f621df257
commands: Add PowerShell completion support
...
Revert "Refactor: Remove powershell support" with fixes
Thanks to Ben Mezger (@benmezger) for the original code.
See #8122
This reverts commit a7c515e1b5
.
2021-02-09 13:37:36 -07:00
Ben Mezger
d36fd5b3ee
Refactor: Write to stdout by default
2021-02-04 15:32:51 -07:00
Ben Mezger
a7c515e1b5
Refactor: Remove powershell support
2021-02-04 15:32:51 -07:00
Ben Mezger
216b00f358
Feat: Add zsh, fish and powershell completion support
...
See issue #4296
2021-02-04 15:32:51 -07:00
Bjørn Erik Pedersen
cea1574023
Add Dart Sass support
...
But note that the Dart Sass Embedded Protocol is still in beta (beta 5), a main release scheduled for Q1 2021.
Fixes #7380
Fixes #8102
2020-12-30 17:32:25 +01:00
Anthony Fok
c84ad8db82
deps: Bump github.com/spf13/cobra from 0.15.0 to 0.20.0
...
The substring match in TestExecute deploy test is adjusted accordingly.
2020-12-04 20:43:03 -07:00
Bjørn Erik Pedersen
d90e37e0c6
all: Format code with gofumpt
...
See https://github.com/mvdan/gofumpt
2020-12-03 13:12:58 +01:00
sth
0ad378b09c
Use --baseURL path for live-reload URL
...
Fixes #6595
2020-12-02 12:52:26 +01:00
Bjørn Erik Pedersen
78f227b664
js: Let ESBuild handle all imports from node_modules
...
This commit fixes some issues where modules in /assets share the same name as in node_modules.
This was not intended, and with this commit the node_modules-components should be isolated. If you want to redefine something inside node_modules, use the `defines` option.
Fixes #7948
2020-11-13 08:54:29 +01:00
Bjørn Erik Pedersen
85e4dd7370
Make js.Build fully support modules
...
Fixes #7816
Fixes #7777
Fixes #7916
2020-11-03 13:04:37 +01:00
Eric Hagman
f465c5c307
build: Allow optional "nodeploy" tag to exclude deploy command from bin
...
Fixes #7826
2020-10-23 09:03:41 +02:00
Bjørn Erik Pedersen
fdfa4a5fe6
Allow getJSON errors to be ignored
...
This change is mostly motivated to get a more stable CI build (we're building the Hugo site there, with Instagram and Twitter shortcodes sometimes failing).
Fixes #7866
2020-10-22 09:09:29 +02:00
Bjørn Erik Pedersen
5e2a547cb5
Add force flag to server redirects config
...
Fixes #7778
2020-10-05 22:20:00 +02:00
Daniel Holbach
292b0e26ec
typo: already -> already
2020-09-14 10:15:59 +02:00
Bjørn Erik Pedersen
85ba9bfffb
Add "hugo mod npm pack"
...
This commit also introduces a convention where these common JS config files, including `package.hugo.json`, gets mounted into:
```
assets/_jsconfig
´``
These files mapped to their real filename will be added to the environment when running PostCSS, Babel etc., so you can do `process.env.HUGO_FILE_TAILWIND_CONFIG_JS` to resolve the real filename.
But do note that `assets` is a composite/union filesystem, so if your config file is not meant to be overridden, name them something specific.
This commit also adds adds `workDir/node_modules` to `NODE_PATH` and `HUGO_WORKDIR` to the env when running the JS tools above.
Fixes #7644
Fixes #7656
Fixes #7675
2020-09-13 20:55:29 +02:00
Bjørn Erik Pedersen
9a1e6d15a3
modules: Make ignoreVendor a glob pattern
...
Fixes #7642
2020-09-10 08:47:05 +02:00
Jeff Warner
d39636a5fc
commands: Remove logic that hides 'Building Sites' message after build completes
...
Append newline to the message instead.
Fixes #7579
2020-08-22 09:56:43 +02:00
Robert van Gent
a1c3e3c1f3
deploy: Ensure that non-trivial default flag values are passed through.
2020-07-04 21:19:25 +02:00