Glean
sydent
Our great sponsors
Glean | sydent | |
---|---|---|
19 | 709 | |
889 | 276 | |
1.2% | 1.4% | |
9.8 | 7.1 | |
5 days ago | 2 months ago | |
Hack | 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.
Glean
-
Is Meta decommissioning Sigma?
Even if it is true (which is an unsubstantiated gossip at the moment), Sigma is not the only Haskell project at Facebook. See https://github.com/facebookincubator/Glean for another example.
-
Codebase as Database: Turning the IDE Inside Out with Datalog
Meta uses something very much like this in production. It’s open sourced at https://glean.software/
-
11 Companies That Use Haskell in Production
Glean, a system for collecting and working with facts about source code.
- Facebook Is Down
-
Is there a tool that would allow me to query (structured search) a codebase?
Glean was recently open sourced, it might fit your needs - https://glean.software/
-
Facebook open sources Glean: a scalable code search and query engine
Cool! I would love to play around with this.
How do I write a schema and indexer for my favorite programming language that isn't currently (and won't be) supported with official releases?
For Schemas, [1] says to modify (or base new ones off) these: https://github.com/facebookincubator/Glean/tree/main/glean/s...
For Indexers, it's a little less clear but it looks like I need to write my own type checker?
Kythe has one schema, whereas with Glean each language has its own schema with arbitrary amounts of language-specific detail. You can get a language-agnostic view by defining an abstraction layer as a schema. Our current (work in progress) language-agnostic layer is called "codemarkup" https://github.com/facebookincubator/Glean/blob/main/glean/s...
For wiring up the indexer, there are various methods, it tends to depend very much on the language and the build system. For Flow for example, Glean output is just built into the typechecker, you just run it with some flags to spit out the Glean data. For C++, you need to get the compiler flags from the build system to pass to the Clang frontend. For Java the indexer is a compiler plugin; for Python it's built on libCST. Some indexers send their data directly to a Glean server, others generate files of JSON that get sent using a separate command-line tool.
References use different methods depending on the language. For Flow for example there is a fact for an import that matches up with a fact for the export in the other file. For C++ there are facts that connect declarations with definitions, and references with declarations.
There will be more indexers: we have Python, C++/Objective C, Rust, Java and Haskell. It's just a case of getting them ready to open source. You can see the schemas for most of these already in the repo: https://github.com/facebookincubator/Glean/tree/main/glean/s...
-
Facebook open sources Glean, its scalable code search and query engine
Existing schemas are here: https://github.com/facebookincubator/Glean/tree/main/glean/schema/source
sydent
-
Qilin: A Starter Project Template For Every Open Source Project
GitHub Discussions can also be a great place for support as long as these are regularly monitored. Another option along the same lines is Discourse and the Open Source Matrix which is used by quite a few Open Source and community-based projects.
-
Launching Default End-to-End Encryption on Messenger
I'd love something like the Matrix [0] data model (JSON messages aggregated in an eventually-consistent chatroom CRDT) transmitted over something like simplex for metadata resistance.
- Show HN: Beeper Mini – iMessage Client for Android
- Um pouco da realidade de Copacabana - principalmente aos finais de semana
- O Fazueli está destruindo o Sul do Brasil
- Correios, Petrobras, Banco do Brasil e outras empresas estatais devem ser privatizadas?
-
Your privacy is optional
Matrix - I currently have my family chat on WhatsApp, but I plan to give my daughters tablets for Xmas and I want them to have a way to chat with family without needing to have a phone number or signup to WhatsApp.
- O mais engraçado desse dado é que na lista tem países que a esquerda considera "social democrata" e nenhum desses países tem 418 estatais 🤡
-
Discord Is Not Documentation
Telegram isn't great for having a main topic with siloed discussions about sub-categories of things.
Slack costs a lot of money if you want searchable history.
Matrix (https://matrix.org/) is pretty bad when you get to using it. It works, but the QOL isn't up to Discord's level.
Discord is just as easy to replace as any other chat platform if they decide to sell out or destroy their product.
> Telegram isn't great for having an overarching place for everyone to join with siloed discussions for sub-categories of discussion.
Just want to point out that they fixed this, it's possible to create Topics once the channel's community reaches 200 users.
Though this probably isn't what most users want for a support channel. Having one place to go is simpler then a community with a dozen company meme channels that you have no interest in seeing.
> Matrix (https://matrix.org/) is pretty bad when you get to using it. It works, but the QOL isn't up to Discord's level.
It goes to hell if you make the mistake of enabling E2EE for channels since the key exchange bogs it down and only a few clients support encrypted message search. Otherwise, yeah the Element clients have pretty bad UX especially when comparing to Telegram. Some other clients like Nheko improve on it but don't cover the full set of features, so while I'm a user of Matrix I find it hard to continue to recommend Matrix over chat ecosystems with better usability.
What are some alternatives?
matrix-docker-ansible-deploy - 🐳 Matrix (An open network for secure, decentralized communication) server setup using Ansible and Docker
livegrep - Interactively grep source code. Source for http://livegrep.com/
matrix-synapse - The Matrix Synapse homeserver for Docker / k8s - deprecated, use upstream
opengrok - OpenGrok is a fast and usable source code search and cross reference engine, written in Java
Mattermost - Mattermost is an open source platform for secure collaboration across the entire software development lifecycle..
apprise-api - A lightweight REST framework that wraps the Apprise Notification Library
Synapse - Synapse: Matrix homeserver written in Python/Twisted.
Mastodon - Your self-hosted, globally interconnected microblogging community
PeerTube - ActivityPub-federated video streaming platform using P2P directly in your web browser
Element - A glossy Matrix collaboration client for the web.
hoverzoom - Google Chrome extension for zooming images on mouse hover
session-desktop - Session Desktop - Onion routing based messenger