| Commit message (Collapse) | Author | Age | Files |
| |\
| |
| |
| |
| | |
uber-go/dependabot/github_actions/actions/setup-go-5
Bump actions/setup-go from 4 to 5
|
| |/
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bumps [actions/setup-go](https://github.com/actions/setup-go) from 4 to 5.
- [Release notes](https://github.com/actions/setup-go/releases)
- [Commits](https://github.com/actions/setup-go/compare/v4...v5)
---
updated-dependencies:
- dependency-name: actions/setup-go
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Adds a `-templates` flag that can be used to provide
an alternative directory with templates for Sally to use.
The new templates override the default set embedded in Sally.
This includes a new 404 template so that 404 errors
use the same theme as the rest of the website.
Additionally, for HTTP status >400,
this also sets the Cache-Control header
to discourage CDNs like Cloudflare from caching the page.
Resolves #125, #18
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
| |
Adds support to other VCS systems as per the specification.
Defaults to `git` for backwards compatibility.
Renames the internally used `.GitURL` to `.RepoURL` for clarity.
|
| |
|
|
|
|
|
| |
Fixes the documentation URL in the homepage, as it already includes the protocol:
https://github.com/uber-go/sally/blob/686fb8782cfa89a807ecc6dcbc104c6dab43eb66/handler.go#L45
Right now, we're rendering "https://https://[...]".
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bumps [actions/checkout](https://github.com/actions/checkout) from 3 to 4.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v3...v4)
---
updated-dependencies:
- dependency-name: actions/checkout
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
|
| |\
| |
| | |
Release v1.5.0
|
| |/ |
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Instead of hand-managing and running linters, use golangci-lint.
Along with the golangci-lint defaults,
enable a couple other linters we generally agree with.
See also uber-go/zap#1323 for a similar change.
As a result of this, we can:
- Drop the dependabot for tools
- Run the lint job in parallel with build/test
- Simplify the Makefile
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
<details>
<summary>Background</summary>
Sally renders two kinds of pages:
- packages: These are for packages defined in sally.yaml
and any route under the package path.
- indexes: These list available packages.
The latter--indexes was previously only supported at '/', the root page.
This leads to a slight UX issue:
if you have a package with a / in its name (e.g. net/metrics):
- example.com/net/metrics gives you the package page
- example.com/ lists net/metrics
- However, example.com/net fails with a 404
</details>
This adds support for index pages on all parents of package pages.
Therefore, if example.com/net/metrics exists,
example.com/net will list all packages defined under that path.
Resolves #31
|
| |
|
|
|
|
|
|
|
|
|
|
| |
The FOSSA check has been failing for a while with
fossa-actions@v1 Error: Input required and not supplied: api-key
This has caused the dependabot queue to backup, can we can't merge them
manually in sally because this check is required.
Updating the version seems to cause the check to run successfully again.
Other repositories have run into the same issue
ref: https://github.com/getsentry/self-hosted/issues/1351
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bumps [golang.org/x/net](https://github.com/golang/net) from 0.14.0 to 0.15.0.
- [Commits](https://github.com/golang/net/compare/v0.14.0...v0.15.0)
---
updated-dependencies:
- dependency-name: golang.org/x/net
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bumps [golang.org/x/net](https://github.com/golang/net) from 0.12.0 to 0.14.0.
- [Commits](https://github.com/golang/net/compare/v0.12.0...v0.14.0)
---
updated-dependencies:
- dependency-name: golang.org/x/net
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bumps [golang.org/x/net](https://github.com/golang/net) from 0.10.0 to 0.11.0.
- [Commits](https://github.com/golang/net/compare/v0.10.0...v0.11.0)
---
updated-dependencies:
- dependency-name: golang.org/x/net
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bumps [github.com/stretchr/testify](https://github.com/stretchr/testify) from 1.8.2 to 1.8.4.
- [Release notes](https://github.com/stretchr/testify/releases)
- [Commits](https://github.com/stretchr/testify/compare/v1.8.2...v1.8.4)
---
updated-dependencies:
- dependency-name: github.com/stretchr/testify
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
|
| |
|
|
|
| |
Updates the checkout, setup-go, and codecov GitHub Actions.
Supersedes #88, #89, #90
|
| |
|
|
|
| |
Updates all Go dependencies in root and tools/.
Supersedes #96, #94, #91
|
| |
|
| |
Adds changelog entries for recent user-facing changes.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bumps [github.com/mgechev/revive](https://github.com/mgechev/revive) from 1.3.1 to 1.3.2.
- [Release notes](https://github.com/mgechev/revive/releases)
- [Changelog](https://github.com/mgechev/revive/blob/master/.goreleaser.yml)
- [Commits](https://github.com/mgechev/revive/compare/v1.3.1...v1.3.2)
---
updated-dependencies:
- dependency-name: github.com/mgechev/revive
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
|
| |
|
|
|
|
|
|
|
|
| |
* Remove branch from PackageConfig struct
With #92, branch is no longer necessary from PackageConfig
struct since go-source tag was removed.
This removes Branch field from PackageConfig.
* update README
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* update: removing redundant go-source tag
* fix: removing /.idea and adding dir to gitignore
* fix: removing /.idea and removing branch field from from templateData
* fix: pkgHndler defaultBranch rem revert
* fix: minor typo
* fix: removing assertion of template responses
* fix: tabs
* Update handler_test.go
* Update handler_test.go
* Update handler_test.go
---------
Co-authored-by: Anuragkillswitch <70265851+Anuragkillswitch@users.noreply.github.com>
|
| |
|
|
|
|
| |
Fixes up the `make lint` target to also check
that all files are properly gofmt-ed,
replaces the deprecated `golint` check with `revive`,
and sets up dependabot to also update tools and actions regularly.
|
| |
|
|
|
|
|
|
|
| |
Similar to the previous patch,
this patch removes knowledge of the configuration from the index handler.
Instead, the index handler is now passed a list of packageInfo structs
each containing just the information needed to render the index page.
This also obviates the need to duplicate the logic to compute
the package import path in the index.html template.
|
| |
|
|
|
|
|
|
|
| |
This patch removes the need to retain the configuration in the
packageHandler struct.
Instead, it retains only the fields that are required for the
handler to function.
This also allows us to pre-compute the canonical import path
rather than calculating it on the request path.
|
| |
|
|
|
|
|
|
|
|
|
| |
Renames the Package struct to PackageConfig
to make it clear that it is a configuration struct.
This differentiation will help disconnect
the configuration-level representation
from the runtime representation of this information.
This patch also adds documentation to the config package
that was previously missing.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bumps [golang.org/x/net](https://github.com/golang/net) from 0.8.0 to 0.9.0.
- [Release notes](https://github.com/golang/net/releases)
- [Commits](https://github.com/golang/net/compare/v0.8.0...v0.9.0)
---
updated-dependencies:
- dependency-name: golang.org/x/net
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Adds a workflow that builds and publishes a Docker image
to ghcr.io based on the Dockerfile in the root of the repository.
This will become available at
https://github.com/uber-go/sally/pkgs/container/sally.
Users will be able to import it by using `ghcr.io/uber-go/sally:$tag`
with `docker pull` or in the `FROM` clause of their own Docker file.
As a test for this, I published it manually to my own fork.
The image is at https://github.com/abhinav/sally/pkgs/container/sally.
With that, I ran the following Dockerfile:
FROM ghcr.io/abhinav/sally:master
COPY sally.yaml /
And it worked as expected.
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bumps [golang.org/x/net](https://github.com/golang/net) from 0.6.0 to 0.7.0.
- [Release notes](https://github.com/golang/net/releases)
- [Commits](https://github.com/golang/net/compare/v0.6.0...v0.7.0)
---
updated-dependencies:
- dependency-name: golang.org/x/net
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
|
| | |
|
| |
|
|
| |
Upgrades to latest release of Go for CI.
This requires switching staticcheck to the latest release as well.
|
| | |
|
| |
|
|
| |
Release notes for v1.3.0 had an incorrect link for changes included
in v1.3.0; fixing this before we actually tag a release with this.
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Adds a Dockerfile that builds sally using a phased Docker build.
The first phase builds sally,
and the second phase publishes a scratch image
with just sally.
If Uber publishes this to a container registry,
a user can use it like so:
% vim sally.yaml # create a sally yaml
% cat > Dockerfile
FROM sally:latest
COPY sally.yaml /sally.yaml
% docker build .
Even without publishing, this provides an example
of how to build sally for deployment.
Testing:
I verified the instructions above locally
by tagging locally with:
% docker build -t sally:latest
I'm also using a variation of this Dockerfile in production
right now for my own hosted instance of sally.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* config: Don't require packages to be alphabetical
The configuration parser requries that
entries in the 'packages' section
are in alphabetical order.
It will fail parsing if that's not the case,
even if the configuration is otherwise valid.
This seems like an unnecessary artificial limitation.
Enforcing such a convention should be the user's choice.
This change deletes this limitation.
* Upgrade to yaml.v3
* template: Use a more fluid layout (#67)
Instead of using a table, take advantage of the grid layout.
We still print a table of sorts,
but it's more fluid in appearance based on width of the screen.
On narrower screens, we'll show a listing
where each item has a description label next to it
rather than at the top.
* Add support for package descriptions (#68)
* template: Use a more fluid layout
Instead of using a table, take advantage of the grid layout.
We still print a table of sorts,
but it's more fluid in appearance based on width of the screen.
On narrower screens, we'll show a listing
where each item has a description label next to it
rather than at the top.
* Add support for package descrpitions
Packages may now optionally specify a description.
If specified, this is printed below the package information,
indented one column to make it stand out.
Co-authored-by: Sung Yoon Whang <sungyoonwhang@gmail.com>
Co-authored-by: Sung Yoon Whang <sungyoonwhang@gmail.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
This drops the third-party HTTP router dependency.
This dependency wasn't strictly necessary
since our routing needs are quite basic:
- `/$name` and `/$name/*` for all registered packages
- `/` for root
This is easily accomplished with `http.ServeMux`:
- register `/$name` and `/$name/`.
The latter will receive all subpackage requests.
- register `/` and reject anything that isn't for exactly `/`.
|
| |
|
|
|
|
| |
This dependency is used to format and compare HTML.
An additional dependency isn't needed;
we can use the existing (previously transitive) x/net package
to reformat and compare the HTML.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* template: Use a more fluid layout
Instead of using a table, take advantage of the grid layout.
We still print a table of sorts,
but it's more fluid in appearance based on width of the screen.
On narrower screens, we'll show a listing
where each item has a description label next to it
rather than at the top.
* Add support for package descrpitions
Packages may now optionally specify a description.
If specified, this is printed below the package information,
indented one column to make it stand out.
Co-authored-by: Sung Yoon Whang <sungyoonwhang@gmail.com>
|
| |
|
|
|
|
|
|
|
| |
Instead of using a table, take advantage of the grid layout.
We still print a table of sorts,
but it's more fluid in appearance based on width of the screen.
On narrower screens, we'll show a listing
where each item has a description label next to it
rather than at the top.
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
The configuration parser requries that
entries in the 'packages' section
are in alphabetical order.
It will fail parsing if that's not the case,
even if the configuration is otherwise valid.
This seems like an unnecessary artificial limitation.
Enforcing such a convention should be the user's choice.
This change deletes this limitation.
|