chore(deps): bump golang.org/x/crypto from 0.36.0 to 0.45.0 in /example in the go_modules group across 1 directory#28
Closed
dependabot[bot] wants to merge 202 commits into
Closed
Conversation
Removed unnecessary blank line in README.md for better readability.
… assets, and integrations - Introduced `CODE_OF_CONDUCT.md` to promote an inclusive and respectful community. - Added `LICENSE.md` to define the terms under which the project can be used and distributed. - Implemented the core admin panel functionality in `internal/adminpanel` package. - Embedded assets and templates using Go's `embed` package for easier static file management. - Created sample assets and templates for demonstration purposes. - Developed initial ORM and web integrations for the admin panel. - Added basic Dockerfile for containerized development and testing. - Established GitHub Actions workflows for CI/CD, including tests and release tagging. - Included basic security policy and contribution guidelines to enhance project governance. - Created an example project to demonstrate usage of the admin panel with Echo web framework. This commit sets up the foundational structure and ensures a consistent development and contribution workflow.
- Added direct dependency on github.com/labstack/echo/v4 v4.12.0 to `go.mod` for more explicit version control. - Updated `main.go` to import the echo package directly, ensuring consistent usage and avoiding potential indirect dependency issues.
Added a permission check to the GetMainPanelHandler function to ensure only authorized users can view the admin panel. Returns a 403 Forbidden status if the user lacks the necessary permissions, improving security and access control.
… method - Added `HasPermission` method to `PermissionFunc` type for better clarity and code readability. - Updated `GetMainPanelHandler` to use the new `HasPermission` method for checking permissions. - Improves maintainability and reduces potential for errors in permission handling logic.
Refactor the permission checking in the admin panel to use a dedicated HasViewPermission method. This improves code readability and reduces repetition by encapsulating the "view" action within a distinct function. - Added HasViewPermission method to PermissionFunc - Updated GetMainPanelHandler to use HasViewPermission This change enhances maintainability by centralizing the view permission logic.
- Renamed `HasViewPermission` to `HasReadPermission` for clarity - Introduced Action type and constants for read, create, update, and delete - Updated PermissionRequest to use Action type instead of string - Added `HasAppReadPermission` method for app-specific read permissions These changes improve code readability and make permission handling more robust.
Added two new methods `HasModelReadPermission` and `HasModelCreatePermission` to the `PermissionFunc` type. These methods allow for checking read and create permissions on specific models within an application, enhancing the granularity of permission checks. This change aims to provide more precise access control for model-level operations.
- Introduced `IsURLSafe` function in `utils` package to ensure names are URL safe. - Added `HumanizeName` function in `utils` package to convert camel case to human-readable names. - Updated `App` struct to include `DisplayName` for more readable model representation. - Modified `RegisterModel` to validate URL safety of model names and apply humanized names. - Enhanced `Model` struct with `DisplayName` to support user-friendly names. - Updated `RegisterApp` to include display name and URL safety checks. These changes ensure that model and app names are both URL safe and user-friendly.
Updated the RegisterApp method to include a unique identifier for each app. This change improves app management and prevents potential conflicts by ensuring each app has a distinct ID.
- Replaced variable names with display names for applications and models - Improved the clarity and user-friendliness of the admin interface
…d apps - Updated `root.html` to render only models with read permissions - Added `Permissions` struct to encapsulate CRUD permissions - Implemented functions to check create, update, delete permissions - Modified `panel.go` to use new permission checks before rendering apps - Enhanced permission logic to ensure only accessible models are displayed This improves security by ensuring users see only models they have access to.
Enhanced the model display in the root template to include 'Update' and 'Add' permissions alongside 'Read'. This provides a clearer overview of available actions for each model, improving user experience and clarity on permitted actions.
…Panel Refactored the GetMainPanelHandler function to be a method on the AdminPanel struct. This improves code readability and encapsulation by keeping related functionality within the same struct. It also simplifies the handler registration in the web server setup.
Updated the title in root.html to dynamically reflect the admin config name. This enhances the user experience by providing a more contextual and personalized page title.
- Added new HTML template (app.html) for app administration interface. - Enhanced `App` struct with `Panel` reference and new methods for handling links and HTTP requests. - Updated `root.html` to include links to individual app pages. - Improved `RegisterModel` method in `App` to set app reference in models. - Introduced `GetHandler`, `GetLink`, and `GetFullLink` methods in `App` to handle app-specific routes and URLs. - Updated `Panel` to register app routes and handle full links. - Modified permission checks to utilize the `Panel` reference in `App`. These changes improve the admin panel's structure, making it more modular, extensible, and easier to navigate.
Removed the "Update" label from the model display in both app.html and
root.html templates to avoid confusion. This change ensures that only
relevant permissions ("View" and "Add") are shown, simplifying the user
interface.
This commit enhances the readability and maintainability of the HTML templates by properly indenting the code. Proper indentation makes it easier for developers to navigate and understand the structure of the HTML documents, facilitating future modifications and debugging.
- Added `model.html` template for model-specific views. - Updated `app.html` and `root.html` to include links to model views. - Modified `app.go` to register routes for model view handlers. - Enhanced `model.go` with methods to generate model links and view handlers. - Improved navigation and user experience by allowing direct access to model views.
- Introduced `ModelsSlice` in `App` struct to maintain an ordered list of models. - Modified `AddModel` method to append models to `ModelsSlice`. - Introduced `AppsSlice` in `AdminPanel` struct for an ordered list of apps. - Updated `AddApp` method to append apps to `AppsSlice`. These changes facilitate maintaining the order of apps and models, which can help in scenarios where the sequence is important, such as UI displays or ordered processing.
Changed the iteration variables to use slices instead of maps in the GetModelsWithReadPermissions and GetAppsWithReadPermissions functions. This ensures proper access to model and app names, improving the reliability of permission checks. - Replaced `app.Models` with `app.ModelsSlice` for model iteration. - Replaced `panel.Apps` with `panel.AppsSlice` for app iteration. - Used `app.Name` directly for permission checks in GetAppsWithReadPermissions.
Renamed 'permisions.go' to 'permissions.go' to fix a typo in the file name. This change improves codebase readability and maintainability by ensuring consistent naming conventions.
Renamed `echo_integrator.go` to `integrator.go` for a more consistent and cleaner file naming convention within the project.
- Introduced a new package `admingorm` for GORM ORM integration. - Added `Integrator` struct with methods `FetchInstances` and `FetchInstancesOnlyFields`. - Enhanced model registration to include field configurations via struct tags. - Implemented field filtering and display customization in model instances. - Updated templates to dynamically render model instances based on field configs. - Updated example to demonstrate GORM integration and automatic DB migrations. - Added utility function `GetFieldValue` for dynamic field value retrieval. - Modified `.gitignore` to exclude database files.
The alias for orm-gorm package import was removed to improve code readability and maintain consistency with other import statements.
- Added primary key detection for models to ensure unique identification. - Implemented filtering of model instances based on read permissions. - Improved field value display in templates to handle missing fields. - Enhanced permission checking logic to include instance-specific checks. These changes improve the robustness and security of the model listing and display functionalities by ensuring correct identification and access control.
- Introduced `listFetch` tag to allow customization of fields being fetched. - Added `IncludeInListFetch` to `FieldConfig` to store fetch inclusion status. - Updated field processing logic to handle `listFetch` tag for finer control. - Default behavior ensures `ID` field is always included unless explicitly excluded. - Removed redundant logging in `model.go` for cleaner output. These changes enhance the flexibility of field fetching, improving performance and customization for the admin panel.
This commit adds comprehensive comments to multiple files within the admin panel module to enhance code readability and maintainability. Each function and struct has been documented with clear descriptions of their purpose and functionality. This will help developers understand the codebase more efficiently, facilitating easier modification and debugging in the future.
Replaced the existing software license with the Apache License, Version 2.0. This change aims to provide clearer terms and conditions for software use, distribution, and modification, enhancing legal protection and clarity for both the authors and users.
chore(license): update license to Apache 2.0
chore(license): update license file to full Apache 2.0 text
- Downgrade Go version from 1.23.1 to 1.16 for compatibility. - Replace indirect dependencies with a direct one for better clarity. - Add `github.com/google/uuid` for UUID generation. - Remove unnecessary indirect dependencies to simplify dependency management. - Adjust `go.sum` and `go.work.sum` accordingly. These changes aim to streamline the dependency management, ensuring the project uses necessary and up-to-date libraries while maintaining compatibility with older Go versions.
chore(go.mod): update dependencies and clean up go.mod file
Introduce a utility function MinInt to determine the minimum of two integers. This enhances code readability and reusability by abstracting common logic. Updated admin panel to use MinInt for slicing log entries, improving clarity and maintainability.
feat(utils): add MinInt function for comparing integers
Added a new issue template for reporting stylistic issues to enhance consistency and readability in the codebase. Updated labels for existing templates to categorize issues better: 'enhancement' for feature requests and 'bug' for bug reports.
feat(issue-templates): add style issue template and update labels
This commit adds a GitHub Actions workflow to check for code complexity in the Go codebase. It triggers on pushes and pull requests to the main branch. The workflow uses gocyclo to identify functions with a complexity greater than 20, ensuring maintainable code and reducing technical debt.
feat(ci): add complexity check workflow using gocyclo
This change updates the complexity check in the GitHub workflow to analyze the entire codebase instead of just the internal directory. By doing so, it ensures that all parts of the project are evaluated for code complexity, promoting better code quality and maintainability throughout the project's lifecycle.
refactor(workflow): broaden complexity check scope to entire project
This change refines the path for the gocyclo complexity check to run in the current directory instead of all subdirectories. This adjustment aims to make the complexity analysis more focused and potentially reduce unnecessary checks, enhancing workflow efficiency.
fix(workflow): update path for complexity check in workflow
Bumps the go_modules group with 2 updates in the /example directory: [golang.org/x/crypto](https://github.com/golang/crypto) and [golang.org/x/net](https://github.com/golang/net). Updates `golang.org/x/crypto` from 0.27.0 to 0.31.0 - [Commits](golang/crypto@v0.27.0...v0.31.0) Updates `golang.org/x/net` from 0.29.0 to 0.36.0 - [Commits](golang/net@v0.29.0...v0.36.0) --- updated-dependencies: - dependency-name: golang.org/x/crypto dependency-type: indirect dependency-group: go_modules - dependency-name: golang.org/x/net dependency-type: indirect dependency-group: go_modules ... Signed-off-by: dependabot[bot] <support@github.com>
Bumps the go_modules group with 1 update in the /example directory: [golang.org/x/net](https://github.com/golang/net). Updates `golang.org/x/net` from 0.36.0 to 0.38.0 - [Commits](golang/net@v0.36.0...v0.38.0) --- updated-dependencies: - dependency-name: golang.org/x/net dependency-version: 0.38.0 dependency-type: indirect dependency-group: go_modules ... Signed-off-by: dependabot[bot] <support@github.com>
…xample/go_modules-2c2c857fc5 chore(deps): bump the go_modules group across 1 directory with 2 updates
…xample/go_modules-bbb8b02913 chore(deps): bump golang.org/x/net from 0.36.0 to 0.38.0 in /example in the go_modules group across 1 directory
Bumps the go_modules group with 1 update in the /example directory: [golang.org/x/crypto](https://github.com/golang/crypto). Updates `golang.org/x/crypto` from 0.36.0 to 0.45.0 - [Commits](golang/crypto@v0.36.0...v0.45.0) --- updated-dependencies: - dependency-name: golang.org/x/crypto dependency-version: 0.45.0 dependency-type: indirect dependency-group: go_modules ... Signed-off-by: dependabot[bot] <support@github.com>
3cf3146 to
bcdc181
Compare
Contributor
Author
|
This pull request was built based on a group rule. Closing it will not ignore any of these versions in future pull requests. To ignore these dependencies, configure ignore rules in dependabot.yml |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Bumps the go_modules group with 1 update in the /example directory: golang.org/x/crypto.
Updates
golang.org/x/cryptofrom 0.36.0 to 0.45.0Commits
4e0068cgo.mod: update golang.org/x dependenciese79546essh: curb GSSAPI DoS risk by limiting number of specified OIDsf91f7a7ssh/agent: prevent panic on malformed constraint2df4153acme/autocert: let automatic renewal work with short lifetime certsbcf6a84acme: pass context to requestb4f2b62ssh: fix error message on unsupported cipher79ec3a5ssh: allow to bind to a hostname in remote forwarding122a78fgo.mod: update golang.org/x dependenciesc0531f9all: eliminate vet diagnostics0997000all: fix some commentsDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
@dependabot rebasewill rebase this PR@dependabot recreatewill recreate this PR, overwriting any edits that have been made to it@dependabot mergewill merge this PR after your CI passes on it@dependabot squash and mergewill squash and merge this PR after your CI passes on it@dependabot cancel mergewill cancel a previously requested merge and block automerging@dependabot reopenwill reopen this PR if it is closed@dependabot closewill close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually@dependabot show <dependency name> ignore conditionswill show all of the ignore conditions of the specified dependency@dependabot ignore <dependency name> major versionwill close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)@dependabot ignore <dependency name> minor versionwill close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)@dependabot ignore <dependency name>will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)@dependabot unignore <dependency name>will remove all of the ignore conditions of the specified dependency@dependabot unignore <dependency name> <ignore condition>will remove the ignore condition of the specified dependency and ignore conditionsYou can disable automated security fix PRs for this repo from the Security Alerts page.