profile
viewpoint
If you are wondering where the data of this site comes from, please visit https://api.github.com/users/LukasKalbertodt/events. GitMemory does not store any data, but only uses NGINX to cache data for a period of time. The idea behind GitMemory is simply to give users a better reading experience.
Lukas Kalbertodt LukasKalbertodt @elan-ev Osnabrück, Germany http://lukaskalbertodt.github.io/ I like teaching and coding.

axiomhq/rust-cuckoofilter 166

Cuckoo Filter: Practically Better Than Bloom (In Rust)

LukasKalbertodt/bunt 165

Simple macros to write colored and formatted text to a terminal. Based on `termcolor`, thus also cross-platform.

auto-impl-rs/auto_impl 47

Automatically implement traits for common smart pointers

elan-ev/opencast-studio 29

Web-based recording studio for Opencast

LukasKalbertodt/atomig 26

Generic and convenient `std` atomics via `Atomic<T>`

LukasKalbertodt/beaver 8

Simulating Turing machines for the Busy Beaver game

elan-ev/tobira 7

Video portal for Opencast

Christopher22/rust-dtmf 6

An encoder and decoder for DTMF written in Rust

LukasKalbertodt/cantucci 6

:bread: Fractal Renderer

LukasKalbertodt/floof 6

Language-agnostic, simple-to-use development server, file-watcher and tiny task runner mainly useful for webdev.

PR opened elan-ev/tobira

Show other videos from series on video page (+ other improvements)

This populates the video page with more useful content. Also see commit messages for some other improvements.

+320 -212

0 comment

23 changed files

pr created time in a day

push eventLukasKalbertodt/tobira

Lukas Kalbertodt

commit sha 2768b5a1a95fae8391c43023df09d0b2798efd3a

Show other videos from series on video page

view details

Lukas Kalbertodt

commit sha 2bec0f6b92d2b9ba094b95230ac85336249d7609

Indicate which video is the current on in series list below video

view details

push time in a day

create barnchLukasKalbertodt/tobira

branch : improvements3

created branch time in 2 days

delete branch LukasKalbertodt/tobira

delete branch : improve-paella

delete time in 2 days

push eventelan-ev/tobira

Lukas Kalbertodt

commit sha b01f2feaecbb32bedc7ed564c82accd0e0603008

Update Paella to `1.0.0-beta.22` and remove workaround for prior version

view details

Lukas Kalbertodt

commit sha c33ea924fe25dff9195547c7cd36910aa22b759a

Add volume, fullscreen, quality, speed and caption buttons to Paella This is all done via plugins, which are all exported from the `paella-basic-plugins` package. Not all buttons are visible all the time: caption button is not visible without captions. And the quality button is apparently not visible at all for MP4 files due to some limitations of Paella.

view details

Lukas Kalbertodt

commit sha 250e990d08142330200b1e918f6823d30c769beb

Use same speed options for Plyr and Paella

view details

Lukas Kalbertodt

commit sha 85870cb42e9d93410f4f8a7d541efce25b4ed3c2

Set Paella log level to `"WARN"` Unfortunately, this still emits debug messages from until the configuration is actually "loaded" in Paella.

view details

Lukas Kalbertodt

commit sha 7c746dc740e5b1aff8bac0214fafbc518baef98b

Remove Paella config entries that are apparently not necessary

view details

Lukas Kalbertodt

commit sha 4b6f7b2ca375d4cd8770f4eaf3a6a950e86fee91

Add types for Paella's config

view details

Lukas Kalbertodt

commit sha 06032b4d52feebbc2b72acda6a0d1b3bdac0fee3

Add some docs to the Paella type definitions

view details

Lukas Kalbertodt

commit sha e3f4fafe5871e653064fce4bb0aa19412aba7d40

Merge pull request #264 from LukasKalbertodt/improve-paella Improve Paella integration and add more buttons (volume, fullscreen, ...)

view details

push time in 2 days

push eventLukasKalbertodt/tobira

Lukas Kalbertodt

commit sha 250e990d08142330200b1e918f6823d30c769beb

Use same speed options for Plyr and Paella

view details

Lukas Kalbertodt

commit sha 85870cb42e9d93410f4f8a7d541efce25b4ed3c2

Set Paella log level to `"WARN"` Unfortunately, this still emits debug messages from until the configuration is actually "loaded" in Paella.

view details

Lukas Kalbertodt

commit sha 7c746dc740e5b1aff8bac0214fafbc518baef98b

Remove Paella config entries that are apparently not necessary

view details

Lukas Kalbertodt

commit sha 4b6f7b2ca375d4cd8770f4eaf3a6a950e86fee91

Add types for Paella's config

view details

Lukas Kalbertodt

commit sha 06032b4d52feebbc2b72acda6a0d1b3bdac0fee3

Add some docs to the Paella type definitions

view details

push time in 2 days

push eventLukasKalbertodt/tobira

Lukas Kalbertodt

commit sha 697e7ad422e7c17bd427f3195e4e0d70942cdd6e

Add some docs to the Paella type definitions

view details

push time in 3 days

push eventLukasKalbertodt/paella-core

Lukas Kalbertodt

commit sha 53b2af77fd13d2e73189e0ebb9b142e06adfac88

Simplify `getValidContentSettings`

view details

push time in 3 days

PR opened polimediaupv/paella-core

Minor code improvements/simplifications

As I was looking through the code, I noticed a few things that could be simplified. Nothing of this is important, but it reduces the amount of code, which is usually a good thing. I'm fine with just closing this PR if you are not interested in these kinds of changes. I thought I would just open a PR since I noticed those things anyway. (This PR is untested btw)

+12 -46

0 comment

2 changed files

pr created time in 3 days

create barnchLukasKalbertodt/paella-core

branch : minor-code-improvements

created branch time in 3 days

PR opened elan-ev/tobira

Improve Paella integration and add more buttons (volume, fullscreen, ...)

See commit messages.

+94 -22

0 comment

6 changed files

pr created time in 3 days

create barnchLukasKalbertodt/tobira

branch : improve-paella

created branch time in 3 days

issue commentpolimediaupv/paella-core

Improve initialization API and `initParams`

If you don't need to implement getManifestUrl and getManifestFileUrl, simply don't add them in the initialization object.

Ok true, that would work, but it still seems weird to me that in loadManifest those are then called unconditionally and try to join strings or read GET parameters from the current URL. Sure, no harm done except a tiny bit of wasted execution time. But it just seems unnecessary.

Again, I think removing this in favor of passing two objects directly to the constructor, would make for a nicer API. And Paella would not have those default initFunctions.js or any documentation related to them. I think you could remove quite a bit of code and docs (easing the maintenance burden), improving the API and without losing any functionality.

But yeah, it kinda works for us and it's obviously your decision.

Please, note that it is important to have a unique video identifier for some plugins to work.

That's very good to know. In my suggestion above, I would just pass a unique ID via the manifest.

LukasKalbertodt

comment created time in 3 days

issue commentpolimediaupv/paella-core

Disable logging completely via configuration

Oh, I'm sorry! I thought you closed the issue after writing your comment, but I now noticed that the issue was closed by a commit. That looks great! A configurable log level, sweet. Thanks!

LukasKalbertodt

comment created time in 3 days

delete branch LukasKalbertodt/tobira

delete branch : moar-improvements

delete time in 3 days

PR merged elan-ev/tobira

More various improvements

See commit messages.

Closes #183

+114 -37

1 comment

11 changed files

LukasKalbertodt

pr closed time in 3 days

push eventelan-ev/tobira

Lukas Kalbertodt

commit sha 4c3e0a4fbce4fe9820e8987a3fc22d0fc4557a7d

Use prepared statements (with per-connection cache) for DB communication This avoids unnecessary work of the DB preparing the queries on each execution, and thus speeding queries up. This also logs slightly more information.

view details

Lukas Kalbertodt

commit sha eae17bd864ba1e922f9ded82f119cda48c0b7eb1

Remove newlines in SQL query strings This is not particularly important, the SQL was valid before, too. But it makes the log less readable and adds unnecessary whitespace.

view details

Lukas Kalbertodt

commit sha dfae2b8e73778f2d2f02297a7c2faede13d32823

Put video title below video This is what YouTube does and Lisa said she didn't even notice the title above the video at first.

view details

Lukas Kalbertodt

commit sha 32582a3d1dd8e0c2e563583b0e33d48190279b42

Remove padding from text blocks Lisa said so :P

view details

Lukas Kalbertodt

commit sha c00eb2b5bc243643855d1f917b85f6dbbefd6ee7

Improve API error page

view details

Lukas Kalbertodt

commit sha ccaab8d2f1aaf92498ddd223e07a908aebc351d0

Merge pull request #262 from LukasKalbertodt/moar-improvements More various improvements

view details

push time in 3 days

issue closedelan-ev/tobira

Use prepared statements

This might become irrelevant if we ever use some kind of ORM, but when we go into production with custom queries, we should prepare them.

closed time in 3 days

JulianKniephoff

issue commentpolimediaupv/paella-core

Typescript types

Ok, that's fair! Then I think we (Tobira) will maintain our own type definitions for Paella for now. Once those are somewhat usable and once Paella 7 is close to being released, we can think about releasing the type definitions somehow.

LukasKalbertodt

comment created time in 3 days

issue commentpolimediaupv/paella-core

Disable logging completely via configuration

it is necessary to create a log library

Well, "a log library" sounds rather large. I guess the main issue could already solved by just defining a couple functions for logging in Paella. Those functions would just check a boolean debug flag, call console.debug if it is true or do nothing if it is false. And everywhere throughout Paella, one would use those new functions for logging.

But I understand that this requires work/time that you cannot invest at the moment.

LukasKalbertodt

comment created time in 3 days

issue closedLukasKalbertodt/bunt

Underlining tabs

Hey there!

I have a string header with this content: " \tSnippet name: \t Source file:" (note, that GitHub doesn't really display all the contained whitespace). I'm trying to print this string underlined: bunt::println!("{[underline]}", header);, but the underlining stops at the tabs. Is this intended behavior? If so, what would be the best workaround here? My output currently looks like this:

image

As a side note, the line bunt::println!("{[underline]}", header); gives me an error in VS Code with Rust-Analyzer:

expected none or () delimited group, but found different token tree (note: do not use the macros from `bunt-macros` directly, but only through `bunt`) 
rust-analyzer(macro-error)

Is this something that I should post an issue about, or would it rather belong in the Rust-Analyzer repository?

closed time in 6 days

LeCyberDucky

issue commentLukasKalbertodt/bunt

Underlining tabs

Hi there!

The issue is not with bunt or even termcolor, but it's a terminal rendering issue. I just tried this code:

let header =  "   \tSnippet name:   \t Source file:";
bunt::println!("{[underline]}", header);

And I see the same problem with the tabs not being underlined with the default Ubuntu terminal application. But inspecting what is emitted by the application with cargo run | hexdump -C shows this:

00000000  1b 5b 30 6d 1b 5b 34 6d  20 20 20 09 53 6e 69 70  |.[0m.[4m   .Snip|
...

This is an ANSI control "reset" (\x1b[0m) and an underline sequence (\x1b[4m) followed by three spaces and then a tab character. So the emitted sequences are fine. So yeah, nothing we can do here.

As a workaround you could use something like the underscore character to draw explicit underlines. But then you could also use underlined spaces. But for drawing tables you probably want to use box drawing characters: https://en.wikipedia.org/wiki/Box-drawing_character. But either way, you have to code your own "tab" logic somehow. Which might be better anyway because relying on a specific tab width for terminals is also probably not a great idea. I hope this helps!

As a side note [...]

Yeah, I'm aware of that. There is this issue about it: https://github.com/LukasKalbertodt/bunt/issues/20 I'm kind of annoyed by it too and might reconsider changing bunt to workaround this problem as it seems quite hard in rust analyzer to fix.

LeCyberDucky

comment created time in 6 days

delete branch LukasKalbertodt/rust

delete branch : improve-array-map-docs

delete time in 16 days

issue openedLokathor/bytemuck

`derive(Pod)` should work for `repr(c)` structs with generics fields where all fields have the same type

According to this definition of repr(C) in Rust, structs where all fields have the same type are laid out like arrays (no padding anywhere). The reference doesn't directly state this, but it follows from the given layout algorithm (unless I'm wrong).

created time in 16 days

fork LukasKalbertodt/bytemuck

A crate for mucking around with piles of bytes

https://docs.rs/bytemuck

fork in 16 days

issue commentLukasKalbertodt/bunt

Support omitting format string

That's a good point. Not quite sure how I did not do that in the first place.

This is fixed in the linked PR and released in 0.2.6.

andrewhickman

comment created time in 17 days

release LukasKalbertodt/bunt

v0.2.6

released time in 17 days

created tagLukasKalbertodt/bunt

tagv0.2.6

Simple macros to write colored and formatted text to a terminal. Based on `termcolor`, thus also cross-platform.

created time in 17 days

push eventLukasKalbertodt/bunt

Lukas Kalbertodt

commit sha 1a0991d66d2f8e268cfa828c90c16e9bacf131b2

Bump version to 0.2.6

view details

push time in 17 days