typing
intellij-community
Our great sponsors
typing | intellij-community | |
---|---|---|
38 | 101 | |
1,529 | 16,485 | |
1.7% | 1.3% | |
8.8 | 10.0 | |
13 days ago | about 19 hours ago | |
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.
typing
- Writing Python like it’s Rust
-
Type Hinting - Constrain metaclass of typing.Type
but looking at relevant issues on GitHub it seems this has been shot down repeatedly. python/typing#18, python/typing#213
-
What type hint should I use for "some container type" in general but explicitly exclude the str type?
See https://github.com/python/typing/issues/256 for a discussion.
-
I use attrs instead of pydantic
Mypy allows that because initial versions of PEP-484 allowed that. This has changed; here's the current wording on the PEP:
> This is no longer the recommended behavior. Type checkers should move towards requiring the optional type to be made explicit.
-
Can I walk through the entire hierarchy of object types?
Dunno, other, larger projects than the one I'm working on seem to run up against this from time to time. (rasa_core, to pick one example from near the top of a Google search; also Telethon, Blender, TensorFlow, Pandas. Guido also filed a bug on the typing module in an early version of Python 3.5 because of unexpected implications of this particular issue, so the problem isn't exactly purely theoretical.) That's aside from the wish for conceptual purity in the call signatures of classes and their subclasses, which is not always and automatically a bad wish to have; and the notion that a language that prides itself on its introspective faculties might want to make introspection of classes from the top of a class hierarchy possible, at least in theory? Perhaps to facility learning about the language and/or visualizing large class hierarchies easily, for instance?
-
Principles of Programming Languages - Robert Harper
How do you define Python? If you include PEP 484 in your definition, surely it must be 'statically typed', otherwise there would be no need for these terms.
-
Type4Py: Machine Learning-based Type Auto-completion for Python
Since Python 3.5 (PEP-484), developers can add type annotations to their code. Python's optional static typing improves code comprehension, code completion, program analysis, and more. However, retrofitting type annotations can be a laborious and time-consuming task.
-
Why Generics? What is the point of it?
You might be interested in looking at PEP 484 (Type Hints https://www.python.org/dev/peps/pep-0484/) and PEP 483 (The Theory of Type Hints https://www.python.org/dev/peps/pep-0483/).
-
Pyre: A performant type-checker for Python 3
> Similarly where a language with first-class support for types might have `type Foo`, Python makes you write `T = TypeVar("T"); class Foo(Generic[T])` or something like that, and it gets more confusing when you only want one of the methods to be generic and I can never remember whether that `T` takes on a single type across all uses or which scope I need to define it in, etc.
I don't know about you but I find PEP 484 very clear here: https://www.python.org/dev/peps/pep-0484/#scoping-rules-for-...
> The problems for which I'm less optimistic tend to revolve around shoehorning typing into existing Python syntax--e.g., to get a callback that takes kwargs you have to define a protocol with a `__call__` method that takes kwargs because you can't express it with `typing.Callable`
You might be interested in the discussion over here then -> https://github.com/python/typing/issues/769#issuecomment-741...
intellij-community
-
Software Company HashiCorp Is Weighing a Potential Sale
Also, no BuSL stupidity, they're all Apache 2 AFAIK: https://github.com/JetBrains/intellij-community/blob/idea/23...
And the "all you can eat" toolbox license is just a staggeringly good deal, IMHO, which also comes with a "you can keep your license forever, just no updates" which is way different from setting subscription-based licensing money on fire when your license expires. Whoever came up with that should be applauded because it really drives down my "what about" anxiety of paying subscription money for IDEs
-
The Fossil Sync Protocol
I readily admit I am not familiar enough with fossil to know about the impedance mismatch, but I'll point out that https://github.com/JetBrains/intellij-plugins/tree/idea/241.... https://github.com/JetBrains/intellij-community/tree/idea/24... https://github.com/JetBrains/intellij-community/tree/idea/24... https://github.com/JetBrains/intellij-community/tree/idea/24... may a long way toward finding how they think about those operations
-
How to Develop an IntelliJ Plugin: A DIY Guide to Adding Drag and Drop with Custom DataFlavors
There is quite a bit going on in our view’s class, so we'll take it slow and go through its functions one by one, according to their importance. The first thing we need to do is to create the structure our items will fit into. com.intellij.ui.treeStructure.Tree seems to best match our needs, and that’s what we’ll use. In order to prepare it for what is coming, we need to configure it.
-
You are never taught how to build quality software
I offer, again, my JetBrains GrammarKit counterpoint from the last time that assertion came up <https://news.ycombinator.com/item?id=38192427>
>>>
I consider the JetBrains parsing system to be world class and they seem to hand-write very few (instead building on this system: https://github.com/JetBrains/Grammar-Kit#readme )
- https://github.com/JetBrains/intellij-community/blob/idea/23... (the parser I'll concede, as they do seem to be hand-rolling that part)
- https://github.com/JetBrains/intellij-community/blob/idea/23... (same for its parser)
- https://github.com/JetBrains/intellij-community/blob/idea/23... and https://github.com/JetBrains/intellij-community/blob/idea/23...
- https://github.com/JetBrains/intellij-plugins/blob/idea/233.... and https://github.com/JetBrains/intellij-plugins/blob/idea/233....
-
Just paying Figma $15/month because nothing else fucking works
I had the same experience with OmniGraffle, https://www.omnigroup.com/omnigraffle
It just worked. There was support. I wouldn't dig a hole in the ground with my bare hands, why wouldn't I use good tools. Of course I would like to use F/OSS for various reasons.
The model I absolutely love is Jetbrains, their core product is OSS, Apache licensed. The whole thing, totally usable. https://github.com/JetBrains/intellij-community
The money I send their way does both, it pays for developers and it puts an amazing artifact in the world that others can use and learn from. If they weren't open source, I wouldnt pay for it. I don't know how many others are the same as me, but Jetbrains really deserves credit here.
-
Show HN: Pg_yregress, Structured Testing for Postgres
# https://github.com/JetBrains/intellij-community/blob/idea/233.9802.14/json/src/jsonSchema/schema.json#L52
-
Java 21 makes me like Java again
and also FOSS (Apache 2): https://github.com/JetBrains/intellij-community (as well as PyCharm found in the "python" subdirectory)
-
Predictive Debugging: A Game-Changing Look into the Future
Interesting that you didn't even mention their opensource community edition: https://github.com/JetBrains/intellij-community wich powers plenty of other open source IDEs
Nice FUD ;)
-
Ask HN: Small scripts, hacks and automations you're proud of?
> I can make the batch file chimeric so it can run in a linux shell as well. Maybe that'll to be my lazy Sunday afternoon?
You may want to draw inspiration from the latest incarnation of JetBrains build bootstrapping script:
https://github.com/JetBrains/intellij-community/blob/idea/22...
What are some alternatives?
mypy - Optional static typing for Python
pylance-release - Documentation and issues for Pylance
oh-my-posh - The most customisable and low-latency cross platform/shell prompt renderer
vscode-kotlin - Kotlin language support for VS Code
kotlin-vim - Kotlin plugin for Vim. Featuring: syntax highlighting, basic indentation, Syntastic support
theia - Eclipse Theia is a cloud & desktop IDE framework implemented in TypeScript.
Apache NetBeans - Apache NetBeans
Code-Server - VS Code in the browser
KotlinLanguageServer - Kotlin code completion, diagnostics and more for any editor/IDE using the Language Server Protocol
kotlin-sublime-package - Sublime Text 2 Package for Kotlin Programming Language
vscodium - binary releases of VS Code without MS branding/telemetry/licensing
Light Table - The Light Table IDE ⛺