Skip to content

Instantly share code, notes, and snippets.

View dconeybe's full-sized avatar

Denver Coneybeare dconeybe

  • Waterloo, ON, Canada
  • 06:19 (UTC -04:00)
View GitHub Profile
/// A sealed class representing either a known enum value or an unknown string value.
sealed class EnumValue<T extends Enum> {
/// The string representation of the value.
String get stringValue;
}
/// Represents a known, valid enum value.
class Known<T extends Enum> extends EnumValue<T> {
/// The actual enum value.
final T value;
$RAISE_SUBPROC_ERROR = True
cd $(mktemp -d kitty_desktop_XXXXXX)
cp ~/local/kitty/share/icons/hicolor/scalable/apps/kitty.svg kitty.svg
for size in [16, 22, 32, 48, 64, 128, 256, 512, 1024, 2048]:
outfile = f"kitty_{size}.png"
outsize = f"{size}:{size}"
svgexport kitty.svg @(outfile) @(outsize)
xdg-icon-resource install --novendor --size @(size) @(outfile) kitty
@dconeybe
dconeybe / log.txt
Created February 18, 2025 20:40
ModuleNotFoundError from npm install -g editly
npm warn deprecated inflight@1.0.6: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.
npm warn deprecated @npmcli/move-file@2.0.1: This functionality has been moved to @npmcli/fs
npm warn deprecated npmlog@5.0.1: This package is no longer supported.
npm warn deprecated npmlog@6.0.2: This package is no longer supported.
npm warn deprecated abab@2.0.6: Use your platform's native atob() and btoa() methods instead
npm warn deprecated rimraf@3.0.2: Rimraf versions prior to v4 are no longer supported
npm warn deprecated are-we-there-yet@2.0.0: This package is no longer supported.
npm warn deprecated are-we-there-yet@3.0.1: This package is no longer supported.
npm warn deprecated glob@8.1.0: Glob versions prior to v9 are no longer supported
npm warn deprecated glob@7.2.3: Glob versions prior to v9 are no longer supported
@dconeybe
dconeybe / 1_tsan_clean.txt
Last active January 10, 2025 20:34
ThreadSanitizer data race in ThreadSafeMemoizer in https://github.com/firebase/firebase-ios-sdk/pull/14300
[ RUN ] LevelDbRemoteDocumentCacheTest/RemoteDocumentCacheTest.DocumentsMatchingAppliesQueryCheck/0
==================
WARNING: ThreadSanitizer: data race (pid=18940)
Write of size 8 at 0x00010e651e60 by thread T6 (mutexes: write M0):
#0 std::swap<std::vector<FieldFilter>*>(std::vector<FieldFilter>*&, std::vector<FieldFilter>*&) swap.h:44
#1 std::shared_ptr<std::vector<FieldFilter>>::swap(std::shared_ptr<std::vector<FieldFilter>>&) shared_ptr.h:833
#2 void std::swap<std::vector<FieldFilter>>(std::shared_ptr<std::vector<FieldFilter>>&, std::shared_ptr<std::vector<FieldFilter>>&) shared_ptr.h:1523
#3 bool std::atomic_compare_exchange_strong<std::vector<FieldFilter>>(std::shared_ptr<std::vector<FieldFilter>>*, std::shared_ptr<std::vector<FieldFilter>>*, std::shared_ptr<std::vector<FieldFilter>>) shared_ptr.h:2096
#4 bool std::atomic_compare_exchange_weak<std::vector<FieldFilter>>(std::shared_ptr<std::vector<FieldFilter>>*, std::shared_ptr<std::vector<FieldFilter>>*, std::shared_ptr<std
https://github.com/firebase/firebase-ios-sdk/pull/14306
Firestore: string_format.h: fix use-after-free bug when internally formatting strings
https://github.com/firebase/firebase-ios-sdk/pull/14306/#discussion_r1909288642
===================================================================================================
FormatArg(const char* string_value,
absl::strings_internal::StringifySink&&,
[2024-09-10T20:17:26.667Z] @firebase/firestore: Firestore (10.13.1): FirestoreClient Received user= F21YCONCfdShOcjFev8AJDAviKw1
[2024-09-10T20:17:26.668Z] @firebase/firestore: Firestore (10.13.1): FirestoreClient Using default OnlineComponentProvider
[2024-09-10T20:17:26.668Z] @firebase/firestore: Firestore (10.13.1): FirestoreClient Using default OfflineComponentProvider
[2024-09-10T20:17:26.668Z] @firebase/firestore: Firestore (10.13.1): FirestoreClient Initializing OfflineComponentProvider
[2024-09-10T20:17:26.669Z] @firebase/firestore: Firestore (10.13.1): FirestoreClient Initializing OnlineComponentProvider
[2024-09-10T20:17:26.669Z] @firebase/firestore: Firestore (10.13.1): MemoryPersistence Starting transaction: Locally write mutations
[2024-09-10T20:17:26.670Z] @firebase/firestore: Firestore (10.13.1): MemoryPersistence Starting transaction: Get next mutation batch
[2024-09-10T20:17:26.670Z] @firebase/firestore: Firestore (10.13.1): MemoryPersistence Starting transaction: Get next mutation ba
LOG [2024-06-07T19:20:03.942Z] @firebase/firestore: Firestore (10.12.2):WebChannelConnection RPC 'Listen' stream 0x5df67f00 sending:{"database":"projects/alternative-3023b/databases/(default)","addTarget":{"documents":{"documents":["projects/alternative-3023b/databases/(default)/documents/users/***@***.******@***.***"]},"targetId":274}}
WARN [2024-06-07T19:20:18.817Z] @firebase/firestore: Firestore (10.12.2):WebChannelConnection RPC 'Listen' stream 0x5df67f00 transporterrored: {"defaultPrevented":false, "g": {"C": undefined, "F": null, "M": [Circular], "g": {"A": null,"Aa": 12, "B": 2, "C": null, "Ca": false, "D": "gsessionid", "Da": [Hc],"F": false, "G": 0, "H": [Object], "I": [T], "J": true, "K":"7o95aOq5t2h58S87QqWYPQ", "L": 45000, "M": false, "O": true, "P": false,"R": 0, "S": [Object], "T": 603, "Ta": 5000, "U": 39565,"Ua": false, "Va": false, "W": "https://firestore.googleapis.com/google.firestore.v1.Firestore/Listen/channel","Wa": 2, "X": false, "Xa": undefined, "Y": 4, "Ya": 261,"ba": false, "ca"
import React, { useEffect, useState, useCallback } from "react";
import { SafeAreaView, FlatList, StyleSheet, ActivityIndicator, } from "react-native";
import { collectionGroup, query, orderBy, onSnapshot, limit, startAfter, getDocs, collection, } from "firebase/firestore";
import { db, auth } from "../firebase";
import Header from "../FireBaseHeader";
import Post from "../FireBasePost";
import { StatusBar } from "expo-status-bar";
import debounce from "lodash.debounce";
const HomeScreen = ({ navigation }) => {
LOG [2024-06-07T16:53:31.772Z] @firebase/firestore: Firestore (10.12.2):WebChannelConnection RPC 'Listen' stream 0x29424eec received:{"targetChange":{"targetIds":[64,66,10,72,60,70,68],"resumeToken":"CgkIzcW4nfrJhgM=","readTime":"2024-06-07T16:53:31.100877Z"}}
LOG [2024-06-07T16:53:31.773Z] @firebase/firestore: Firestore (10.12.2):WebChannelConnection RPC 'Listen' stream 0x29424eec received:{"targetChange":{"targetIds":[66,72,70,64,10,68,60],"resumeToken":"CgkIzcW4nfrJhgM=","readTime":"2024-06-07T16:53:31.100877Z"}}
LOG [2024-06-07T16:53:31.773Z] @firebase/firestore: Firestore (10.12.2):WebChannelConnection RPC 'Listen' stream 0x29424eec received:{"targetChange":{"targetIds":[66,60,72,70,64,68,10],"resumeToken":"CgkIzcW4nfrJhgM=","readTime":"2024-06-07T16:53:31.100877Z"}}
LOG [2024-06-07T16:53:31.773Z] @firebase/firestore: Firestore (10.12.2):WebChannelConnection RPC 'Listen' stream 0x29424eec received:{"documentChange":{"document":{"name":"projects/alternative-3023b/databases/(default)/documents/
@dconeybe
dconeybe / CompatTypeTest.ts
Created July 6, 2023 22:05
App used to test the Firestore v10 typings for the compat library
import firebase from 'firebase/compat/app';
import 'firebase/compat/firestore';
interface Post {
name: string;
age: number;
}
const myConverter: firebase.firestore.FirestoreDataConverter<Post> = {
fromFirestore(