haproxy
diff-match-patch
haproxy | diff-match-patch | |
---|---|---|
16 | 8 | |
4,467 | 7,115 | |
1.6% | 1.2% | |
9.9 | 0.0 | |
6 days ago | about 1 month ago | |
C | Python | |
GNU General Public License v3.0 or later | 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.
haproxy
-
HAProxy is not affected by the HTTP/2 Rapid Reset Attack (CVE-2023-44487)
I wanted to try it out just now but hit a roadblock immediately - it cannot automatically obtain and maintain TLS certificates. You have to use an external client (e.g. acme.sh), set up a cron to check/renew them, and poke HAProxy to reload them if necessary. I'm way past doing this in 2023.
https://www.haproxy.com/blog/haproxy-and-let-s-encrypt
https://github.com/haproxy/haproxy/issues/1864
-
Why Haproxy is not build with PROMEX by default (Linux / BSD)
For context I think this might be useful: https://github.com/haproxy/haproxy/blob/master/addons/promex/README
-
minexmr2.com updated to p2pool v3.1, monerod v0.18.2.0, and ready for Mar 18 p2pool (not monero) hardfork
I turn on 1 relatively cheap cloud server to process DNS, https and stratum connections and route them via haproxy to one of N miner servers described above.
-
HAProxy Security Update (CVE-2023-25725) - HTTP content smuggling attack
Full technical writeup here: https://github.com/haproxy/haproxy/commit/a8598a2eb11b6c989e81f0dbf10be361782e8d32
- Request smuggling in HAProxy via empty header name
- Enormous session rate
- Update to haproxy 2.4.18 breaks WebDAV
-
HAProxy 2.7
With the recent discussions about memory safe languages, HAProxy is still surprisingly written in C [0].
[0]: https://github.com/haproxy/haproxy
-
35M Hot Dogs: Benchmarking Caddy vs. Nginx
It does not, because HAProxy does not perform any disk access at runtime and thus would be unable to persist the certificates anywhere. Disks accesses can be unpredictably slow and would block the entire thread which is not something you want when handling hundreds of thousands of requests per second.
See this issue and especially the comment from Lukas Tribus: https://github.com/haproxy/haproxy/issues/1864
Disclosure: Community contributor to HAProxy, I help maintain HAProxy's issue tracker.
-
Guide to Adapting HAProxy to openGauss
Code link: https://github.com/haproxy/haproxy
diff-match-patch
-
Ideas for approaching pattern matching/distance problem
I also came across this diff match algorithms: https://github.com/google/diff-match-patch
-
Form editing, changelogs, and progressive diffing - am I reinventing the wheel?
Outside of that, to get the diffs there is a library called diff-match-patch that has implementations in most languages. Your data model / state tracking sounds like it matches the internal constraints.
-
Here’s my ~600 byte (minified, gzipped) package for diffing two strings.
So I'll just leave you with this question - why, as a developer, would I ever advise using this, when fast diff is an industry standard tool that does exactly this, but better, using well tested methods that are being implemented in JS and further optimized by one of the largest global tech companies. Mind you, this is the same company which has developed its own proprietary monolithic VCS, managing versioning for 2billion+ lines of code.
-
Show HN: Character-Based Git Conflict Resolution
Hello HN!
I was always annoyed by conflicts that can be solved automatically, but still need human intervention. E.g. two people changing the same line, but at different, non-conflicting positions. So I searched for a character based patching library and found this nice article https://neil.fraser.name/writing/patch/ and its corresponding library https://github.com/google/diff-match-patch.
Parsing git conflicts, applying patches and showing some useful diffs in the UI helps me to solve 80% of my conflicts automatically. I hope it can help you too.
Happy Hacking!
-
Keeping track of changes made to xml file.
A bit late to the party but have you checked this? google/diff-match-patch
-
Ask HN: What are the best the publicly available FAMANG code repos?
Found this, simple and seems interesting: https://github.com/google/diff-match-patch
-
Getting the difference of two strings
If you need to know exactly what the diff is, you might want to use something like github.com/google/diff-match-patch. Otherwise, a simple Levenshtein distance would suffice. This library seems to have a whole bunch of string distances implemented. Hope this helps!
-
Get Diff and Patch Html
Photo by Markus Spiske on Diff.Match.Patch based on Google library.
What are some alternatives?
zstd - Zstandard - Fast real-time compression algorithm
esbuild - An extremely fast bundler for the web
ClickHouse - ClickHouse® is a free analytics DBMS for big data
StringDistances.jl - String Distances in Julia
3proxy - 3proxy - tiny free proxy server
webdiff - Two-column web-based git difftool
Caddy - Fast and extensible multi-platform HTTP/1-2-3 web server with automatic HTTPS
tmatch - Super fast token matcher
Jool - SIIT and NAT64 for Linux
Eureka - AWS Service registry for resilient mid-tier load balancing and failover.
brotli - Brotli compression format
Pawky - The Python version of awk