kamal
rewrite
kamal | rewrite | |
---|---|---|
30 | 24 | |
9,073 | 1,904 | |
3.1% | 7.5% | |
9.3 | 9.9 | |
3 days ago | 3 days ago | |
Ruby | Java | |
MIT License | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
kamal
-
My deployment platform is a shell script
Guessing you're talking about https://kamal-deploy.org/ which looks interesting, though I tend to like reconciliation logic based systems ... but often only fired off imperatively with a plan/apply separation. So I shall be having a poke around anyway :)
-
How Rails Powers PopaDex for Simplified Financial Planning
Navigating the deployment landscape can be a daunting task for any developer, particularly those going it alone. PopaDex uses Kamal as its deployment solution, due to its straightforward and efficient nature. This tool is designed to facilitate the quick deployment of Rails applications across diverse environments, streamlining what can often be a complicated process. Kamal's appeal lies in its ability to demystify deployment, removing the hurdles commonly associated with Docker and app deployment in general. A couple of the main benefits of Kamal:
-
Let's build a screenshot API
Or you can use [https://kamal-deploy.org/] and GitHub actions for automating at least deploys, but there are still will be issues that you will need to solve.
- FLaNK AI for 11 March 2024
- Kamal β Deploy web apps anywhere, from bare metal to cloud VMs
-
The Hater's Guide to Kubernetes
For homelab, Docker compose should be enough
For something more production oriented https://github.com/basecamp/kamal
- Kamal β Deploy web apps anywhere
- Kamal: Open-source, zero-downtime deployment with rolling restarts
-
Continuous Deployment with GitHub Actions and Kamal
Kamal is a wonderfully simple way to deploy your applications anywhere. It will also be included by default in Rails 8. Kamal is trivial, but I donβt recommend using it on your development machine.
rewrite
- FLaNK Weekly 31 December 2023
- OpenRewrite β Automated mass refactoring of source code
-
AST-grep(sg) is a CLI tool for code structural search, lint, and rewriting
If you're into this sort of thing, there's OpenRewrite[1] for the Java ecosystem.
[1] https://docs.openrewrite.org/
-
What's New in Spring Framework 6.1
> Spring has gotten so bloated.
I'd call Spring feature-rich than bloated. You can always shed weight that you don't want to carry.
> Plus there's multiple ways of doing the same thing. e.g. JPA, spring-data.
That's because there are different ways to solve a problem. Someone may want an ORM-based approach to connect to the database; they can choose spring-data-jpa. Someone may want to use JDBC with a light abstraction on top of it; they can choose spring-data-jdbc. It's all about choices and right tradeoffs and Spring offers plenty of them.
> they don't provide easy upgrade paths between majors versions
That's not my experience. I've been happily upgrading 2.x.x versions and plan to upgrade to 3.2.x when it is ready. But depending on the codebase, I admit it can be painful. Projects like OpenRewrite[1] might help here.
> and they stop updating vulnerabilities on older major versions.
This is not news. They want you to pay for extended support if you need it.
> No docs on migration.
They do maintain migration docs on GitHub wiki which are a lot more detailed than their blog posts on migration. Here's the latest one to upgrade from Spring Boot 2 to 3: https://github.com/spring-projects/spring-boot/wiki/Spring-B...
[1]: https://github.com/openrewrite/rewrite
-
We already have Spring 2.1.3, Is SpringBoot 3 worth learning.
The issue you may run into when migrating from Spring Boot 2.x to 3.x is the JEE namespace renames. Migrating code from 8 to 17 in my experience hasn't been all that difficult. In most projects, there are no changes to make. However, with the namespace change, you'll probably have to do some planning and testing. If you are migrating a lot of projects, check out Open Rewrite, it may help automate a lot of these upgrades (for both 8 to 17 and Spring Boot versions).
-
Why wouldn't somebody change their version?
Couldn't OpenRewrite (https://docs.openrewrite.org) do a big part of this manual work?
-
Any ideas on how to automate upgrade of legacy Spring Framework/Spring Boot repositories?
Openrewrite would probably be a big help, see https://docs.openrewrite.org
-
what is your favorite programming trick/tool that not many People know about?
In a similar vein there is OpenRewrite which is an open-source project that works in a similar way. It also has a lot of great refactorings already built in, like doing all the grunt work for migrating to JUnit 5, or replacing string concatenation in SLF4J log calls with parameterized formatting.
-
Refactoring giant codebase
seems a case for https://docs.openrewrite.org/
-
What are your thoughts on Spring in 2023?
https://github.com/openrewrite/rewrite might help
What are some alternatives?
build-push-action - GitHub Action to build and push Docker images with Buildx
JavaParser - Java 1-18 Parser and Abstract Syntax Tree for Java with advanced analysis functionalities.
whisper-plus - WhisperPlus: Faster, Smarter, and More Capable π
gradle-lint-plugin - A pluggable and configurable linter tool for identifying and reporting on patterns of misuse or deprecations in Gradle scripts.
Nomad - Nomad is an easy-to-use, flexible, and performant workload orchestrator that can deploy a mix of microservice, batch, containerized, and non-containerized applications. Nomad is easy to operate and scale and has native Consul and Vault integrations.
grammars-v4 - Grammars written for ANTLR v4; expectation that the grammars are free of actions.
OpenVoice - Instant voice cloning by MyShell.
cl-cuda - Cl-cuda is a library to use NVIDIA CUDA in Common Lisp programs.
Centurion - A mass deployment tool for Docker fleets
aws-ip-ranges - Tracking the history and size of AWS's ip-ranges.json file
ssh-agent - GitHub Action to setup `ssh-agent` with a private key
spring-cloud-dataflow - A microservices-based Streaming and Batch data processing in Cloud Foundry and Kubernetes