profile
viewpoint
If you are wondering where the data of this site comes from, please visit https://api.github.com/users/ephemer/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.
Geordie J ephemer @flowkey Berlin, DE

ephemer/meteor-reactive-datatables 41

A meteor.js way to use jquery dataTables. Reactively-updating data, instant filter/search and pagination.

ephemer/meteor-before-leave-previous 3

meteor.js, Iron Router: Prevent unloading current route until all beforeLeavePrevious functions on new route return true (for animation, security)

ephemer/cordova-plugin-inappbrowser 2

Mirror of Apache Cordova Plugin inappbrowser

ephemer/meteor-json-collections 2

A meteor package that makes simple local collections out of .json files in your app bundle

ephemer/getRates 1

A simple command line app that fetches the latest exchange rates from openexchangerates.org and prints them to the command line in an easily readable format.

ephemer/apollo-ios 0

📱 A GraphQL client for iOS, written in Swift

ephemer/chessclock 0

A multiplayer chess clock made in Meteor.js

ephemer/codechallenge-ember 0

The first time I ever tried to code for someone other than myself. Kept here for posterity. Used ember.js, google maps, and flickr to show map and find photos from map location

ephemer/cordova-ios 0

Mirror of Apache Cordova iOS

ephemer/cordova-plugin-wkwebview-engine 0

Mirror of Apache Cordova wkwebview engine plugin

issue commentevanw/esbuild

[Feature] Code splitting on async import() statements.

I would like to quickly chime in on this discussion again because it's been a few months since I last wrote. In July I put a bunch of work into this and was able to get code splitting working fine for esm. Unfortunately I don't remember right now exactly what needed changing for this to work in our setup – the main thing was probably changing the input files so they really did use es module syntax by cleanly importing and exporting the needed parts. We have a large legacy codebase written in Meteor and I put a bunch of work into removing the Meteor magic and using real imports.

With that in mind, I would now request instead that the default for target: "browser" change to bundle esm, given that more and more browsers support it. I don't consider it that urgent or important though, and it would be a breaking change. Maybe something to consider for later though.

As for Firefox not supporting esm @jbms, in our setup we have a loader plugin that creates a separate bundle for our worker by calling the esbuild API again from the plugin, just to bundle the worker file. There we use a different set of settings (in our case we do not need splitting at all for our worker bundle). Maybe that workaround is possible for you too.

tracker1

comment created time in 8 days

issue commentsfztools/sfizz

Performance on ARM (RBPi4)

I would be curious to hear of any further improvements possible for ARM machines. We plan to deploy sfizz on a variety of mobile (phone/tablet) devices, almost all of which are using ARM, either v7a or v8-a.

From what we can see for our use case, almost all of the sfizz CPU time is spent in the interpolation functions. That may be due to our sample-heavy instruments though – for synthesised instruments this may look quite different.

If there are low-hanging fruit updating the simde library to vectorise certain operations, this is something I would be interested at looking into. Admittedly, I don't have a huge amount of experience in the area though (I have a lot more experience using slightly higher-level SIMD primitives, e.g. in Swift).

jofemodo

comment created time in 13 days

issue commentsfztools/sfizz

Effects

Hi @jpcima @paulfd, could you elaborate on how these effects are to be used in sfizz?

We are building sfizz as a standalone (non-VST etc.) library and would like to use the same set of (piano) samples in two ways: one with reverb with certain parameters and one without (or with different reverb parameters).

From what I saw in #84 these effects seem to be specified in the sfz file. Is there a way to add/alter them programatically as well via the public C/C++ API? If not, are there any examples you could point me to of how to correctly set up the parameters in the sfz file(s)? (The reverb effect in particular would be extremely useful).

jpcima

comment created time in 14 days

Pull request review commentflowkey/UIKit-cross-platform

Add JNI implementation of FileManager for Android

+//+//  JavaFile.swift+//  UIKit+//+//  Created by Chetan Agarwal on 07/06/2019.+//  Copyright © 2019 flowkey. All rights reserved.+//++#if os(Android)++import Foundation+import JNI++/**+ https://developer.android.com/reference/java/io/File+ */+class JavaFile: JNIObject {+++    override public class var className: String {+        return "java.io.File"+    }++    convenience init(path: String) throws {+        try self.init(JavaFile.className, arguments: [path])+    }++    func getAbsolutePath() throws ->  String {

nit: too many spaces before String

mouselangelo

comment created time in 22 days

Pull request review commentflowkey/UIKit-cross-platform

Add JNI implementation of FileManager for Android

+//+//  FileManager+Android.swift+//  UIKit+//+//  Created by Chetan Agarwal on 07/06/2019.+//  Copyright © 2019 flowkey. All rights reserved.+//++#if os(Android)++import Foundation++public class AndroidFileManager: FileManager {+

nit: remove empty space at top of class

mouselangelo

comment created time in 22 days

Pull request review commentflowkey/UIKit-cross-platform

Add JNI implementation of FileManager for Android

+//+//  AndroidContext.swift+//  UIKit+//+//  Created by Chetan Agarwal on 07/06/2019.+//  Copyright © 2019 flowkey. All rights reserved.+//++#if os(Android)++import Foundation+import JNI++/**+ https://developer.android.com/reference/android/content/Context+ */+class AndroidContext: JNIObject {++    override public class var className: String {+        return "android.content.Context"+    }++    static func getContext() throws -> AndroidContext {+        return try AndroidContext(+            jni.call("getContext", on: getSDLView(), returningObjectType: className)+        )+    }++    func getCacheDir() throws ->  JavaFile {

nit: there is one too many spaces before JavaFile in this and the function below

mouselangelo

comment created time in 22 days

Pull request review commentflowkey/UIKit-cross-platform

Add JNI implementation of FileManager for Android

+//+//  AndroidContext.swift+//  UIKit+//+//  Created by Chetan Agarwal on 07/06/2019.+//  Copyright © 2019 flowkey. All rights reserved.+//++#if os(Android)++import Foundation+import JNI++/**+ https://developer.android.com/reference/android/content/Context+ */+class AndroidContext: JNIObject {+

nit: remove empty line at top of class

mouselangelo

comment created time in 22 days

Pull request review commentflowkey/UIKit-cross-platform

Add JNI implementation of FileManager for Android

+//+//  AndroidContext.swift+//  UIKit+//+//  Created by Chetan Agarwal on 07/06/2019.+//  Copyright © 2019 flowkey. All rights reserved.+//++#if os(Android)++import Foundation+import JNI++/**+ https://developer.android.com/reference/android/content/Context+ */+class AndroidContext: JNIObject {

note: we do already have JavaContext as a type in the JNI (JavaParameterConvertible+Objects.swift:64) but there are good reasons not to use it here. Specifically, that type is set up as a struct (which doesn't seem right to me) and there doesn't seem to be much further benefit in using it at the moment (the protocol conformances are not very useful to us here unfortunately).

In the medium term, it may make sense to move AndroidContext and AndroidFile out of UIKit though. Rather than putting them into the JNI, I think a separate module / repo à la import Android would be the best for these kinds of higher-level APIs – that would give others a solid base to use and expand on for some fundamental Android functionality that would go beyond (and maybe replace) what Foundation gives us.

mouselangelo

comment created time in 22 days

Pull request review commentflowkey/UIKit-cross-platform

Add JNI implementation of FileManager for Android

+//+//  JavaFile.swift+//  UIKit+//+//  Created by Chetan Agarwal on 07/06/2019.+//  Copyright © 2019 flowkey. All rights reserved.+//++#if os(Android)++import Foundation+import JNI++/**+ https://developer.android.com/reference/java/io/File+ */+class JavaFile: JNIObject {++

nit: remove empty lines at start of class definition

mouselangelo

comment created time in 22 days

Pull request review commentflowkey/UIKit-cross-platform

Add JNI implementation of FileManager for Android

+//+//  JavaFile.swift+//  UIKit+//+//  Created by Chetan Agarwal on 07/06/2019.+//  Copyright © 2019 flowkey. All rights reserved.+//++#if os(Android)++import Foundation+import JNI++/**+ https://developer.android.com/reference/java/io/File+ */+class JavaFile: JNIObject {

final

mouselangelo

comment created time in 22 days

Pull request review commentflowkey/UIKit-cross-platform

Add JNI implementation of FileManager for Android

+//+//  JavaFile.swift+//  UIKit+//+//  Created by Chetan Agarwal on 07/06/2019.+//  Copyright © 2019 flowkey. All rights reserved.+//++#if os(Android)++import Foundation+import JNI++/**+ https://developer.android.com/reference/java/io/File+ */+class JavaFile: JNIObject {+++    override public class var className: String {+        return "java.io.File"+    }++    convenience init(path: String) throws {+        try self.init(JavaFile.className, arguments: [path])

this type of initializer is deprecated (see JNIObjects.swift:49)

instead we should be able to just call try super.init(path) since String is a JavaParameterConvertible (see JNIObjects.swift:61)

I do see the benefit in adding a strongly typed initializer like this though, even though it would like the same at the call site as JavaFile(path) either way

mouselangelo

comment created time in 22 days

Pull request review commentflowkey/UIKit-cross-platform

Add JNI implementation of FileManager for Android

+//+//  FileManager+Android.swift+//  UIKit+//+//  Created by Chetan Agarwal on 07/06/2019.+//  Copyright © 2019 flowkey. All rights reserved.+//++#if os(Android)++import Foundation++public class AndroidFileManager: FileManager {

this should probably be final too?

mouselangelo

comment created time in 22 days

Pull request review commentflowkey/UIKit-cross-platform

Add JNI implementation of FileManager for Android

+//+//  AndroidContext.swift+//  UIKit+//+//  Created by Chetan Agarwal on 07/06/2019.+//  Copyright © 2019 flowkey. All rights reserved.+//++#if os(Android)++import Foundation+import JNI++/**+ https://developer.android.com/reference/android/content/Context+ */+class AndroidContext: JNIObject {

minor: we can probably make this class final

mouselangelo

comment created time in 22 days

Pull request review commentflowkey/UIKit-cross-platform

Add JNI implementation of FileManager for Android

+//+//  FileManager+Android.swift+//  UIKit+//+//  Created by Chetan Agarwal on 07/06/2019.+//  Copyright © 2019 flowkey. All rights reserved.+//++#if os(Android)++import Foundation++public class AndroidFileManager: FileManager {++    private static var instance = AndroidFileManager()++    public static override var `default`: FileManager {+        return instance+    }++    public override func urls(for directory: FileManager.SearchPathDirectory,+                              in domainMask: FileManager.SearchPathDomainMask) -> [URL] {+        do {+            guard let url = try getDirectory(ofType: directory) else { return [] }+            return [url]+        } catch {+            return []+        }+    }++    func getDirectory(ofType type: FileManager.SearchPathDirectory) throws -> URL? {+        let context = try AndroidContext.getContext()++        let file: JavaFile?++        switch type {+        case .cachesDirectory:+            file = try context.getCacheDir()+        case .documentDirectory:+            file = try context.getFilesDir()+        default:+            assertionFailure("Dir type: 'FileManager.SearchPathDirectory.\(type)' is not implemented yet.")+            return nil

this throws + Optional construct makes the other code here more complex than it could be. I think this would be clearer and easier to work with as another Error case (via an enum with an associated value).

If doing that poses too many issues, I think fatalError would also be ok here (but not ideal) – then we wouldn't need to return anything at all 🤡

mouselangelo

comment created time in 22 days

Pull request review commentflowkey/UIKit-cross-platform

Add JNI implementation of FileManager for Android

+//+//  FileManager+Android.swift+//  UIKit+//+//  Created by Chetan Agarwal on 07/06/2019.+//  Copyright © 2019 flowkey. All rights reserved.+//++#if os(Android)++import Foundation++public class AndroidFileManager: FileManager {++    private static var instance = AndroidFileManager()++    public static override var `default`: FileManager {+        return instance+    }++    public override func urls(for directory: FileManager.SearchPathDirectory,+                              in domainMask: FileManager.SearchPathDomainMask) -> [URL] {+        do {+            guard let url = try getDirectory(ofType: directory) else { return [] }+            return [url]+        } catch {+            return []+        }

with the changes mentioned below this could be simplified quite a bit

    guard let url = try? getDirectory(ofType: directory) else {
        return []
    }

    return [url]
mouselangelo

comment created time in 22 days

Pull request review commentflowkey/UIKit-cross-platform

Add JNI implementation of FileManager for Android

+//+//  FileManager+Android.swift+//  UIKit+//+//  Created by Chetan Agarwal on 07/06/2019.+//  Copyright © 2019 flowkey. All rights reserved.+//++#if os(Android)++import Foundation++public class AndroidFileManager: FileManager {++    private static var instance = AndroidFileManager()++    public static override var `default`: FileManager {+        return instance+    }++    public override func urls(for directory: FileManager.SearchPathDirectory,+                              in domainMask: FileManager.SearchPathDomainMask) -> [URL] {+        do {+            guard let url = try getDirectory(ofType: directory) else { return [] }+            return [url]+        } catch {+            return []+        }+    }++    func getDirectory(ofType type: FileManager.SearchPathDirectory) throws -> URL? {+        let context = try AndroidContext.getContext()++        let file: JavaFile?

Looking at the code that initializes this variable (i.e. getCacheDir / getFilesDir) it looks like we can remove the optionality of this variable, which would simplify the code below somewhat

mouselangelo

comment created time in 22 days

PullRequestReviewEvent
PullRequestReviewEvent

push eventflowkey/swift-atomics

Geordie Jay

commit sha 98da8f5aae4a95569129f98b54ff8e47a1e2e2f2

Allow CMake build

view details

push time in a month

fork ephemer/swift-atomics

Low-level atomic operations for Swift

fork in a month

delete branch ephemer/node-mongodb-native

delete branch : addFindTypeTests

delete time in a month

pull request commentmongodb/node-mongodb-native

test(NODE-3468): Add tests for a strongly-typed Db

Done! @dariakp

ephemer

comment created time in a month

push eventephemer/node-mongodb-native

Geordie J

commit sha a2a43e5a9e639e2236411f62476ad27585ba1865

Update test/types/community/collection/findX.test-d.ts Co-authored-by: Daria Pardue <81593090+dariakp@users.noreply.github.com>

view details

push time in a month

push eventephemer/node-mongodb-native

Geordie J

commit sha 6691b3eff458bda8aebae2ac4893968416b02a94

Update test/types/community/collection/findX.test-d.ts Co-authored-by: Daria Pardue <81593090+dariakp@users.noreply.github.com>

view details

push time in a month

push eventephemer/node-mongodb-native

Geordie J

commit sha a2f82e13c2c282a75f470dc5e4a132279feaff2c

Update test/types/community/collection/findX.test-d.ts Co-authored-by: Daria Pardue <81593090+dariakp@users.noreply.github.com>

view details

push time in a month

PR opened mongodb/node-mongodb-native

test(NODE-3468): Add tests for a strongly-typed Db

NODE-3468

Description

What changed?

Are there any files to ignore?

+33 -4

0 comment

1 changed file

pr created time in a month

create barnchephemer/node-mongodb-native

branch : addFindTypeTests

created branch time in a month

issue commentandroid/ndk

[FR] macOS & Apple Silicon Support

You're welcome to use those.

How can we tell the NDK to use the "native" brew versions? Is this trivial or does it require digging into the internals. In general I would be fine to dig into the internals but it doesn't seem worth it since it's already "working", but slower

jonpryor

comment created time in a month

PullRequestReviewEvent