goprotobuf
Pi-hole
Our great sponsors
goprotobuf | Pi-hole | |
---|---|---|
13 | 2,357 | |
9,546 | 46,812 | |
0.8% | 1.2% | |
2.8 | 8.0 | |
about 1 month ago | 5 days ago | |
Go | Shell | |
BSD 3-clause "New" or "Revised" License | GNU General Public License v3.0 or later |
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.
goprotobuf
-
Protoc Plugins with Go
Now let’s take a look at the source code of the protoc-gen-go plugin:
- How Turborepo is porting from Go to Rust
-
The Tragic Death of Inheritance
Wait, you say, in Go you can embed a struct with default method implementations to "inherit" them in your composed struct... sure, except any methods called by those methods are early-bound in the original struct, completely ignoring your wrapper, so the best you can do is "not implemented" rather than actually implement something. It is at least a way to prevent semver-major breakage, which the gRPC generator uses, but that's about as far as it gets you.
- Protobuf - Go support for Google's protocol buffers
-
Passing large amounts of data between processes via a file?
The classic answer is protobufs. You can serialize out to binary format.
-
2022-01-11 gRPC benchmark results
Seems like go is pretty middle of the road. I can only guess as to why but it probably has to do with heavy usage of pointers and reflection which are much slower than other implementations. Gogo/protobuf (RIP) solved this performance with code generation, but the the official go protobuf implementation has essentially eschewed it. I do wonder how the benchmark would look using the new vitess proto library for Go (which has many of the benefits of gogo but with active development and an API built on top of the Google one)
- A complete yet beginner friendly guide on how to secure Linux
-
A new ProtoBuf generator for Go
Maybe I'm missing something, but my read of [golang/protobuf#364](https://github.com/golang/protobuf/issues/364) was that the re-organization in protobuf-go v2 was allow for optimizations like gogoprotobuf to be developed without requiring a complete fork. I totally understand that the authors of gogoprotobuf do not have the time to re-architect their library to use these hooks, but best I can figure this generator does not use these hooks either. Instead it defines additional member functions, and wrappers that look for those specialized functions and fallback to the generic ones if not found.
I am thinking about stuff like the [ProtoMethods](https://pkg.go.dev/google.golang.org/[email protected]/reflec...) API.
I wonder why not? Did the authors of the vtprotobuf extension not want to bite off that much work? Is the new API not sufficient to do what they want (thus failing some of the goals expressed in golang/protobuf#364?
-
How to Auto Generate JavaScript code using GO
In this case try approach with line by line generation. Very much like what protoc-gen-go does for Go code: https://github.com/golang/protobuf/blob/ae97035608a719c7a1c1c41bed0ae0744bdb0c6f/protoc-gen-go/grpc/grpc.go#L142, need to implement this kind of generator yourself.
-
Writing a code generator in Go
Something like this: https://github.com/golang/protobuf/blob/master/internal/gengogrpc/grpc.go
Pi-hole
-
Usando NextDNS CLI en tu red.
Si te preguntas, ¿por qué no usar Adguard o Pihole? 🤔
-
Radicle: Open-Source, Peer-to-Peer, GitHub Alternative
This is an overreaction, almost to the point of absurdity.
Risks inherent to pipe installers are well understood by many. Using your logic, we should abandon Homebrew [1] (>38k stars on GitHub), PiHole [2] (>46k stars on GitHub), Chef [3], RVM [4], and countless other open source projects that use one-step automated installers (by piping to bash).
A more reasonable response would be to coordinate with the developers to update the docs to provide alternative installation methods, rather than throwing the baby out with the bathwater.
[1] https://brew.sh/
[2] https://github.com/pi-hole/pi-hole
[3] https://docs.chef.io/chef_install_script/#run-the-install-sc...
[4] https://rvm.io/rvm/install
-
Ask HN: For what purposes do you use a Raspberry Pi?
Pi-hole to block ads and tracking for my less technically savvy relatives
https://pi-hole.net/
-
Runs on your OpenWrt box: AdGuard Home is network-wide blocking ads and tracking
I ran a competing project[0] on my home network for a few years before I discovered NextDNS[1]. What I lost in performance (requests don't leave my house) I gained in portability: ALL my devices can take advantage – at home and away – and time-saved. PiHole works 90% of the time, but when it did stop working, I'd have to spend a bit of time fixing it. At $20/year, I simply couldn't compete with NextDNS.
Note: This isn't a shill for NextDNS; I love these kinds of projects and think they absolutely should exist, but NextDNS just happens to be one of those dead-simple SaaS tools that is an insanely good value.
0 - https://pi-hole.net/
1 - https://nextdns.io
-
Higher fees, more ads: streaming cashes in by using the old tactics of cable TV
It definitely IS an option, but at the network level.
https://pi-hole.net/
It runs on damn near everything, and is a DNS level adblocker for the whole network.
-
In 2024, please switch to Firefox
I recently switched to Wipr [0]. It’s dead simple to use, and will auto update its filter lists in the background.
Adguard [1] is a decent free option.
I also use a Pi-hole [2] on my network.
[0] https://kaylees.site/wipr.html
[1] https://adguard.com/en/adguard-safari/overview.html
[2] https://pi-hole.net/
-
Overwhelmed by a project
Are you trying to build a DNS proxy (similar to Pi-hole) that intercepts DNS requests and checks for the ones that look harmful? If so, I would suggest trying to separately build a DNS client and a DNS server, before trying to integrate them together. Start with Beej's Guide to Network Programming if you need to learn the basics of sockets, and then take a look at the documents that define the DNS protocol itself (RFC1034 and RFC1035).
-
Great Forgotten Sci-Fi Movies of the 1980s
Setup a pi-hole.
- The Internet will win the war against anti ad-block software. YT is very foolish and basically legitimizes piracy with their "business model"
-
Is there an Android app that blocks the ads on games?
It's definitely not as simple as installing an app on your phone, but I run a Pi-hole on my home network, and it does block ads in many games.
What are some alternatives?
colfer - binary serialization format
Technitium DNS Server - Technitium DNS Server
gogoprotobuf - [Deprecated] Protocol Buffers for Go with Gadgets
blocky - Fast and lightweight DNS proxy as ad-blocker for local network with many features
jsoniter - A high-performance 100% compatible drop-in replacement of "encoding/json"
AdGuardHome - Network-wide ads & trackers blocking DNS server
cbor - CBOR codec (RFC 8949) with CBOR tags, Go struct tags (toarray, keyasint, omitempty), float64/32/16, big.Int, and fuzz tested billions of execs.
PowerDNS-Admin - A PowerDNS web interface with advanced features
mapstructure - Go library for decoding generic map values into native Go structures and vice versa.
bypass-paywalls-chrome - Bypass Paywalls web browser extension for Chrome and Firefox.
asn1
pihole-regex - Custom regex filter list for use with Pi-hole.