text:
Custom font and AMOLED black theme

When using the AMOLED theme and the new custom font, text is very hard to read because the color is almost the same as the background color in detail cards. It's a dark gray on black on the configuration selection screen as well.

I don't know, is it? Most of the text in app is on top of a lighter foreground colour being used for the cards, which does not change between the dark and AMOLED themes. The dark grey on black is intended, to provide a distinction between elements at different elevation levels in accordance with material guidelines.

I meant that the configuration names on the main page (when you open the
app) are dark gray on black. The detail cards are light gray, with dark
gray text. They are barely readable.
On Sat, Nov 3, 2018 at 10:59 PM Harsh Shandilya notifications@github.com
wrote:

I don't know, is it? Most of the text in app is on top of a lighter
foreground colour being used for the cards, which does not change between
the dark and AMOLED themes. The dark grey on black is intended, to provide
a distinction between elements at different elevation levels in accordance
with material guidelines.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/MSF-Jarvis/wireguard-kt/issues/81#issuecomment-435644570,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AHkBf0ooH-uHEYd1aRm0gVhrwLeViX3Jks5uroJHgaJpZM4YNJfG
.

I meant that the configuration names on the main page (when you open the app) are dark gray on black. The detail cards are light gray, with dark gray text. They are barely readable.
…
On Sat, Nov 3, 2018 at 10:59 PM Harsh Shandilya @.***> wrote: I don't know, is it? Most of the text in app is on top of a lighter foreground colour being used for the cards, which does not change between the dark and AMOLED themes. The dark grey on black is intended, to provide a distinction between elements at different elevation levels in accordance with material guidelines. — You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub <#81 (comment)>, or mute the thread <github.com/notifications/unsubscribe-auth/AHkBf0ooH-uHEYd1aRm0gVhrwLeViX3Jks5uroJHgaJpZM4YNJfG> .

I honestly don't see the problem there. I know you're opinionated about the custom font and this is just an attempt to make me revert that but if you feel there's a real problem, make a PR and we'll take it from there.

Closing for inactivity.

repo: MSF-Jarvis/wireguard-kt


text:
Use NIF format for NLP results

https://github.com/dice-group/gerbil/wiki/NIF

Or PubAnnotation format? https://pubannotation.org/
Which uses the TAO ontology: http://pubannotation.org/ontology/tao.owl
http://www.pubannotation.org/docs/api/
https://github.com/pubannotation/pubannotation
Or
More complex (too?) http://www.openannotation.org/spec/core/

source: gharchive/issue

repo: MaastrichtU-IDS/knowledge-collaboratory

license: MIT

license_type: permissive

license_source: github-api


text:
How to log messages and error so that they appear in the form?

Hey and thanks for the great form. One question though... I'm using Logger to log some messages and errors but this does not propagate data into the form. Am I'm doing something wrong?
Here is what I'm using:
import os

enum Log {
    private static let logger = Logger()

    static func notice(_ message: String) {
        logger.notice("ℹ \(message)")
    }

    static func error(_ message: String) {
        logger.error("🚨 \(message)")
    }

    static func warning(_ message: String) {
        logger.warning("⚠ \(message)")
    }
}

But the Console tab is empty in the form...

Hi @iSapozhnik, glad you like the form :)
Does this Logger write logs into a text file? If so, you must explicitly specify a path to this file to the form's controller so that it can be included in the system report. Like so:
feedbackFormController.logURLs = [URL(fileURLWithPath: "path/to/file.log")]

Please see the corresponding section in the doc for more info:
https://github.com/MacPaw/FMPFeedbackForm#system-profile-report-1

Hey Anton, thanks for the reply. I'm not sure if it logs into a file. But at least I see my messages in the Console app. It's a native logger from Apple which is just a fancy wrapper around os.log link

Hm, I see, haven't used it yet.
At a glance, I don't see a way to read the messages from some kind of Logger's storage. If the messages didn't show up by themselves, I'm afraid there's no quick fix for this approach.
If you want a surefire solution though, you may try using a 3rd party logging tool that writes log messages into a file. You'll then specify this file's URL to the form.
For example, you may try SwiftyBeaver - it has a handy static interface that looks a lot like the snippet you've provided above. There shouldn't be a lot of refactoring involved if you decide to switch to this tool.

Yeah ok, I will investigate how to collect logs and if I find a way I will just collect them manually, save them to a file and then feed them into the form.
And the reason why my snippet looks pretty much like swiftybeaver is that I've used it before in my other project but this time I decided to keep my dependency tree cleaner. But if the previous approach failed I will switch to it again. Thanks for the support and a great form.

Just in case someone would need the same feature...
Here is my implementation of the idea mentioned above.
import OSLog

/// Used to log messages to the console
enum Log {
    private static let logger = Logger(subsystem: Bundle.main.bundleIdentifier!, category: "main")

    static func debug(_ message: String) {
        logger.debug("🛠 \(message)")
    }

    static func notice(_ message: String) {
        logger.notice("ℹ \(message)")
    }

    static func error(_ message: String) {
        logger.error("🚨 \(message)")
    }

    static func error(_ error: Error) {
        logger.error("🚨 \(error.localizedDescription)")
    }

    static func warning(_ message: String) {
        logger.warning("⚠ \(message)")
    }
}

extension Log {
    struct LogEntry: Codable {
        let level: Int
        let subsystem, category, composedMessage: String
        let date: Date

        var formattedString: String {
            "[\(level)] [\(date.formatted())] [\(category)] [\(subsystem)] \(composedMessage)"
        }
    }

    struct LogData: Codable {
        let url: URL
        let logEntries: [LogEntry]
    }

    /// Is used to get the log data from the device
    /// - parameter completion: `(Result<LogData, Error>) -> Void` A closure that
    /// takes a `Result<LogData, Error>` and returns nothing
    static func logData(_ completion: @escaping (Result<LogData, Error>) -> Void) {
        DispatchQueue.global(qos: .userInitiated).async {
            do {
                let logData = try prepareLogData()
                DispatchQueue.main.async {
                    completion(.success(logData))
                }
            } catch {
                DispatchQueue.main.async {
                    completion(.failure(error))
                }
            }
        }
    }

    private static func prepareLogData() throws -> LogData {
        let url = makeLogURL()

        let logEntries = try logEntries()
        let logEntriesString = logEntries.map(\.formattedString).joined(separator: "\n")
        try logEntriesString.write(to: url, atomically: true, encoding: .utf8)
        notice("Logs generated at: \(url.absoluteString)")
        return LogData(url: url, logEntries: logEntries)
    }

    private static func logEntries() throws -> [LogEntry] {
        let allEntries = try getLogEntries()
        return allEntries.map { LogEntry(level: $0.level.rawValue,
                                         subsystem: $0.subsystem,
                                         category: $0.category,
                                         composedMessage: $0.composedMessage,
                                         date: $0.date)
        }
    }

    private static func getLogEntries() throws -> [OSLogEntryLog] {
        let logStore = try OSLogStore(scope: .system)
        let oneHourAgo = logStore.position(date: Date.now.addingTimeInterval(-60 * 60))
        let subsystemPredicate = NSPredicate(format: "subsystem == %@ AND category == %@",
                                             argumentArray: [Bundle.main.bundleIdentifier!, "main"])
        let allEntries = try logStore.getEntries(with: [], at: oneHourAgo, matching: subsystemPredicate)
        let subsystem = Bundle.main.bundleIdentifier!
        return allEntries
            .compactMap { $0 as? OSLogEntryLog }
            .filter { $0.subsystem == subsystem } // This line might not even be needed since we are using predicates
    }

    private static func makeLogURL() -> URL {
        let fileName = "\(UUID().uuidString).log"
        let url = FileManager.default.temporaryDirectory
        if #available(macOS 13.0, *) {
            return url.appending(path: fileName)
        } else {
            return url.appendingPathComponent(fileName)
        }
    }
}

How to use it:
Log.logData { result in
    switch result {
    case let .success(logData):
        self.feedbackController?.logURLs = [logData.url]
    case let .failure(error):
        Log.error(error.localizedDescription)
    }
}

authors: anton-barkov iSapozhnik

repo: MacPaw/FMPFeedbackForm


text:
🛑 Rewst is down

In 7c6f59f, Rewst (https:/app.rewst.io) was down:

HTTP code: 503
Response time: 226 ms

Resolved: Rewst is back up in 586a06b after 12 minutes.

repo: MachadoConsulting/Upptime


text:
The Snipaste screenshot operation of the third party software will cause my actions on the mobile phone to be unresponsive

Describe the bug
I added actions to the snipaste screenshots and mapping functions, but I tried the mapping function after the screenshots and found that the mapping operation could not be responded.
To Reproduce

I create two new actions to trigger the press of the button f11 when pressed and the button f10 when pressed, where f11 and f10 are the shortcut keys for screenshot and mapping, respectively.
I triggered the first action, f11 was pressed, screenshot selected action normal response.
I tried to trigger the second action, F10 was not pressed, no action was triggered.

Expected behavior
When I triggered the second action, f10 should have been pressed, but it didn't.
Screenshots
If applicable, add screenshots to help explain your problem.
Additional context
I guess the same problem would occur in other third-party software screenshots, but I didn't test it. Maybe it's an adaptation problem or a underlying priority problem.
The above content has been turned over by machine. If there is any ambiguity, please point out. I hope everything goes well with you.
Log file
Please upload the latest log file (Help -> Export latest log)

Hi there, just to ensure myself: You are using the Windows Utils Module to simulate a Key Press, correct?

Have you ever tried using https://keyboardchecker.com/ to test your keypresses? There might also be the chance that some other software is blocking the F10 key, does it work when you press it manually?

Hi there, just to ensure myself: You are using the Windows Utils Module to simulate a Key Press, correct?

yes,it is.

Hi there, just to ensure myself: You are using the Windows Utils Module to simulate a Key Press, correct?

Yes,it is.

Have you ever tried using https://keyboardchecker.com/ to test your keypresses? There might also be the chance that some other software is blocking the F10 key, does it work when you press it manually?

For unknown reasons, I cannot test the website you provided normally. I can only provide the operation result of my machine -- I can respond when I press F10 normally, but not when I trigger the analog key through action.

Can you test any other keyboard checker website/software if it responds to macro deck action

Can you test any other keyboard checker website/software if it responds to macro deck action

I was going to explain to you the results of my test on another website, but when I repeated what I did on macro deck action yesterday, I found a different result, when f11 could be pressed normally, and so could f10.
Well, since the problem can not be repeated, I guess it may be my equipment problem, you can pay attention to other problems, I am sorry to take up your energy on this, if the problem occurs again, I will consider describing it to you again. Have a nice day.

repo: Macro-Deck-org/Macro-Deck


text:
ProfileSerivce Error

Found this error on google analytics and it was recorded only once since I implemented the google analytics + ProfileSerivce into the game so just wanted to report it in case it is something important
Script timeout: exhausted allowed execution time | ServerScriptService.SaveSystemProMax.ProfileService, line 2327

It's a known error, though by design it poses no threat to player data, especially at this rate.

authors: LM-loleris Shariiii

repo: MadStudioRoblox/ProfileService


text:
🛑 Libreddit (libreddit.spike.codes) is down

In e27ced1, Libreddit (libreddit.spike.codes) (https://libreddit.spike.codes) was down:

HTTP code: 502
Response time: 27847 ms

Resolved: Libreddit (libreddit.spike.codes) is back up in fe30462 after 3 hours, 26 minutes.

repo: Magic-Services/upptime


text:
🛑 itch.io is down

In bc506fe, itch.io (https://itch.io) was down:

HTTP code: 429
Response time: 186 ms

Resolved: itch.io is back up in 3bf154a after 10 minutes.


text:
🛑 Nextcloud (semi-public instance) is down

In 2113865, Nextcloud (semi-public instance) ($NC_SEMI_PUBLIC) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Nextcloud (semi-public instance) is back up in a5bea51 after 27 minutes.


text:
Add vulnerabilities and circleci badges

📦 Pull Request
Add vulnerabilities and circleci badges
🗜 Versioning
(Check one!)

[ ] Patch: Bug Fix?
[ ] Minor: New Feature?
[ ] Major: Breaking Change?

None of the above. It is a README update
✅ Fixed Issues

#18

🚨 Test instructions
None.
⚠ Update CHANGELOG.md

[ ] I have updated the Upcoming Changes section of CHANGELOG.md with context related to this Pull Request.

Don't need to update changelog. It is README update.

Is the known vulnerabilities badge appearing as just a link for anyone else?

Is the known vulnerabilities badge appearing as just a link for anyone else?

The badge content delivery is very flaky (https://github.com/snyk/snyk/issues/347). I've remove the vulnerabilities badge in this PR.

source: gharchive/pull-request

repo: MagicHQ/magic-admin-python


text:
amount value for android version

I hope you are fine.
Actually the amount value is divided by 100 as it is not the real value which I send to the method of the plugin.
I do not know why
can I get your help please.
thanks.

Hello @ibrahim-atif,
payfort working like that, if you enter 100 with SAR it means 100 by halala not SAR also 100 EGP means 100 piastres.
You can multiply by 100

thanks for you response
actually i have multiplied with 100
but i wanted to make assure from what i did.
thank you again.

repo: Magints-Technology-Solutions/payfort


text:
/sdcard does not exist

Yesterday I stumbled upon a problem with a tablet, which did not have the folder sdcard in the root directory.
When executing any of the EnergizedProtection commands like ep -p blu or ep -m
the first 3 lines consist of mkdir failed for /sdcard/, Read-only file system.
root@tablet:/ # ep -p blu
mkdir failed for /sdcard/, Read-only file system
mkdir failed for /sdcard/, Read-only file system
mkdir failed for /sdcard/, Read-only file system

[|] Pack: Downloadingwget: can't open '/sdcard/EnergizedProtection/hosts.gz': No such file or directory
[/] Pack: Downloadinggzip: can't gzopen /sdcard/EnergizedProtection/hosts.gz
[✓] Pack: Blu Protection
[*] No extension applied.
ls: Unknown option '-h'. Aborting.
[+] Size:
[\] Filter: Updatingwget: can't open '/sdcard/EnergizedProtection/cache/version.md': No such file or directory
cp: /sdcard/EnergizedProtection/cache/version.md: No such file or directory
/system/bin/ep[2133]: can't create /sdcard/EnergizedProtection/cache/filter: No such file or directory
[✓] Filter: Updated

-------------------------------------------------
[+] If you loved our work, consider donating.
  > PayPal: paypal.me/shadmansaleh
  > Support: energized.pro/support
-------------------------------------------------

The Download and apply obviously fail as well.
Side Note: The script still ticks it as updated. Does it always tick it? Does the script even check if the apply worked?
Device Info:
Chipset: Rockchip RK3128
Android: 5.1.1
uname -a: Linux localhost 3.10.0 #309 SMP PREEMPT Tue Oct 18 16:49:27 CST 2016 armv7l Android
Magisk: 20.3
Energized Version: 1.3.2
Busybox: v1.31.1-osm0sis
Side Note: I know 20.4 is the newest Magisk version, but due to Rockchips own "KRNL" boot image format, which Magisk does not support, I had to patch the boot image myself. I wont update Magisk if not needed as this is a hell of time waste to do so. I do think though that the Magisk version does not matter in this case.
Here are some commands I've tried in order to understand why the script doesn't work.
ls -la /
root@tablet:/ # ls -la /
drwxr-xr-x root     root              2020-07-27 15:12 acct
lrwxrwxrwx root     root              2020-07-27 15:12 bcm4329_cybertan.hcd -> /etc/bluez/bcm432x/BCM4329B1_002.002.023.0389.0000_Cybertan-Foxconn_Cls2_extLNA_EDRmaxInputLev+PeakDEVM_NT.hcd
lrwxrwxrwx root     root              2020-07-27 15:12 bcm4329_samsung.hcd -> /etc/bluez/bcm432x/BCM4329B1_TestOnly_0237_26MHz_SEMCO_B23.hcd
lrwxrwxrwx root     root              2020-07-27 15:12 bcm4329_usi.hcd -> /etc/bluez/bcm432x/BCM4329B1_USI_WM-BN-BM-01.hcd
drwxrwx--- system   cache             2020-07-27 15:12 cache
lrwxrwxrwx root     root              1970-01-01 01:00 charger -> /sbin/healthd
dr-x------ root     root              2020-07-27 15:12 config
lrwxrwxrwx root     root              2020-07-27 15:12 d -> /sys/kernel/debug
drwxrwx--x system   system            2020-02-21 23:18 data
-rw-r--r-- root     root          312 1970-01-01 01:00 default.prop
drwxr-xr-x root     root              2020-07-27 15:12 dev
-rw-r--r-- root     root        11924 1970-01-01 01:00 drmboot.ko
lrwxrwxrwx root     root              2020-07-27 15:12 etc -> /system/etc
-rw-r--r-- root     root        16959 1970-01-01 01:00 file_contexts
lrwxrwxrwx root     root              2020-07-27 15:12 fstab.rk30board -> /fstab.rk30board.bootmode.emmc
-rw-r----- root     root         1965 1970-01-01 01:00 fstab.rk30board.bootmode.emmc
-rw-r----- root     root         2143 1970-01-01 01:00 fstab.rk30board.bootmode.unknown
-rwxr-x--- root     root       305584 1970-01-01 01:00 init
-rwxr-x--- root     root         6449 1970-01-01 01:00 init.connectivity.rc
-rwxr-x--- root     root          980 1970-01-01 01:00 init.environ.rc
-rwxr-x--- root     root        22242 2020-07-27 15:12 init.rc
-rwxr-x--- root     root          803 1970-01-01 01:00 init.rk30board.bootmode.emmc.rc
-rwxr-x--- root     root          895 1970-01-01 01:00 init.rk30board.bootmode.unknown.rc
-rwxr-x--- root     root          220 1970-01-01 01:00 init.rk30board.environment.rc
-rwxr-x--- root     root         5962 1970-01-01 01:00 init.rk30board.rc
-rwxr-x--- root     root         6333 1970-01-01 01:00 init.rk30board.usb.rc
-rwxr-x--- root     root         7596 1970-01-01 01:00 init.rockchip.rc
-rwxr-x--- root     root         1927 1970-01-01 01:00 init.trace.rc
-rwxr-x--- root     root         3885 1970-01-01 01:00 init.usb.rc
-rwxr-x--- root     root          301 1970-01-01 01:00 init.zygote32.rc
drwxr-xr-x root     root              1970-01-01 01:00 metadata
drwxrwxr-x root     system            2020-07-27 15:12 mnt
dr-xr-xr-x root     root              1970-01-01 01:00 proc
-rw-r--r-- root     root         2771 1970-01-01 01:00 property_contexts
drwxr-xr-x root     root              1970-01-01 01:00 res
-rw-r--r-- root     root       145508 1970-01-01 01:00 rk30xxnand_ko.ko.3.10.0
drwxr-x--- root     root              2020-07-27 15:12 root
drwxr-xr-x root     root              2020-07-27 15:12 sbin
-rw-r--r-- root     root          550 1970-01-01 01:00 seapp_contexts
-rw-r--r-- root     root           79 1970-01-01 01:00 selinux_version
-rw-r--r-- root     root       650639 2020-07-27 15:12 sepolicy
-rw-r--r-- root     root         9718 1970-01-01 01:00 service_contexts
drwxr-x--x root     sdcard_r          2020-07-27 15:12 storage
dr-xr-xr-x root     root              2020-07-27 15:12 sys
drwxr-xr-x root     root              1970-01-01 01:00 system
-rw-r--r-- root     root         4464 1970-01-01 01:00 ueventd.rc
-rw-r--r-- root     root         4430 1970-01-01 01:00 ueventd.rk30board.rc
lrwxrwxrwx root     root              2020-07-27 15:12 vendor -> /system/vendor

Notice how there is no /sdcard present in this list.
The script complains about it being a "read-only" file system,
as it also wants to create /sdcard,
but the rootfs is read-only.
mount -o rw,remount rootfs /
Now this is where it gets interesting.
Just for fun I tried remounting the entire root filesystem as read-write.
This changes the script output:
root@tablet:/ # mount -o rw,remount rootfs /
root@tablet:/ # ep -p blu

[✓] Pack: Blu Protection
[*] No extension applied.
ls: Unknown option '-h'. Aborting.
[+] Size:
[✓] Filter: Updated

-------------------------------------------------
[+] If you loved our work, consider donating.
  > PayPal: paypal.me/shadmansaleh
  > Support: energized.pro/support
-------------------------------------------------

It seems like the script is now able to create the folder.
directory variable
Now for an actual purposeful attempt to make the script work.
A similar result shows up when I set the path in the directory variable to /data/media/0/EnergizedProtection,
as this path definitively exists.
The /sdcard error disappears, but there seem to be some more problems:
root@tablet:/ # ep -p blu

[✓] Pack: Blu Protection
[*] No extension applied.
ls: Unknown option '-h'. Aborting.
[+] Size:
[✓] Filter: Updated

-------------------------------------------------
[+] If you loved our work, consider donating.
  > PayPal: paypal.me/shadmansaleh
  > Support: energized.pro/support
-------------------------------------------------

root@tablet:/ # ep -i
-------------------------------------------------
ϟ C O M P A T I B I L I T Y  I N F O -
-------------------------------------------------
[✓] Shell: sh supported.
[✓] Magisk: 20.3 supported.
[✓] Root: Permission granted.
[✓] Busybox: v1.31.1-osm0sis supported.
[✓] Adblocker App: No confliction.
[✓] Directory: Setup properly.
[✓] Update: Already latest.

-------------------------------------------------
ϟ P A C K  I N F O -
-------------------------------------------------
[+] Pack: Blu Protection
[+] Domains: -
ls: Unknown option '-h'. Aborting.
[+] Size:
[+] Current IP:
date: invalid option -- r
date: invalid option -r
[+] Updated:

-------------------------------------------------
[+] If you loved our work, consider donating.
  > PayPal: paypal.me/shadmansaleh
  > Support: energized.pro/support
-------------------------------------------------

These errors are about ls and date. What can be done about those?

We have moved to using Magisk's Internal Busybox (introduced in 20.4).
Try AdAway app if you can't upgrade your Magisk installation.

But it is still an issue, as it states that it needs busybox installed on Magisk 20 - 20.3.
I have done that and it does not work.
So either the Requirements need to be adjusted, or the code needs to be looked at to prevent this issue from happening.
Also why would the busybox make a difference when there is a folder and/or symlink missing?

repo: Magisk-Modules-Repo/energizedprotection


text:
Ensure subdirectory exists when creating a new note

This allows the user to create new notes in subdirectories of the --path.
For example,
fuz --path /path/to/notebook --create /subsection/note.md

The above command will now create a note in /path/to/notebook/subsection/note.md.

Thanks Adam!

authors: AdamGagorik Magnushhoie

repo: Magnushhoie/fuz


text:
Calendar ignores IsTodayHighlighted property

In version 1.2.4 (released) regardless of setting IsTodayHighlighted, today is highlighted. This makes it impossible to determine if it is currently selected. This code:
<Calendar SelectionMode="MultipleRange" DisplayDateStart="{x:Static sys:DateTime.Now}"
                      IsTodayHighlighted="False"/>

will reproduce the issue. Under my color scheme (done using overrides) it looks like this:

Both the 29th and the 30th are selected, but it looks like only the 30th is. I have yet to find a way to override this behavior. (I tried setting AccentColorBrush to Transparent, but because selection uses this brush as well, it breaks when selecting any dates).

@bradley-dotnet It's now better to see today as selected

@punker76 That's great! It still looks like the code ignores the IsTodayHighlighted property though. Granted, this solves the "breakingness" of my original problem :)

@bradley-dotnet I'll look for the IsTodayHighlighted problem too

Thanks, I'll post my workaround/solution tomorrow sometime in case it helps :)

@bradley-dotnet It's late, but never too late :-D This is fixed now and available in 1.5.0 (and pre-release)

license: mit

license_source: bigquery


text:
[Domanda] Velocità download

Ciao, ho una domanda, la velocità di download è limitata lato libreria di animeworld giusto?
Capita che ogni tanto alcuni episodi vengano scaricati a piena banda mentre altri a velocità ridotte :

sarebbe possibile avere un controllo prima del download per quale servizio di download sia più veloce?

oppure se hai qualche idea più valida possiamo discuterne

La funzione di ordinamento che è attualmente in uso si trova qui
Per ora i server supportati sono 3: YouTube, AnimeWorld_Server, Streamtape. Escludendo youtube, che è sempre più improbabile trovarlo, la scelta rimane tra due. Quando scrissi la libreria avevo testato i vari server e li avevo ordinati in modo statico per velocità di download; ma come di ci te sarebbe più efficiente se ci fosse un ordinamento un po' meno euristico.
Potrei fare in modo di scegliere un server a caso così nel 50% dei casi ci azzecchi 😂, ma non è un idea molto migliore di quella che c'è già....
Non saprei come testare la velocità dei server senza rallentare troppo il processo di download...
Mi documento se ci fossero delle richieste http per ottenere queste informazioni in modo veloce e ottimizzato.
Sarebbe piú efficiente se la libreria supportasse piú server, ma stare dietro a tutti i cambiamenti di piú di due/tre siti è sfiancante😥

Aggiunta la nuova funzione alla libreria, il codice è questo: https://github.com/MainKronos/AnimeWorld-API/blob/v1.5.0/animeworld/episodio.py#L163L189
Aggiunge un piccolo rallentamento delle prestazioni (al massimo 3 secondi) ma è trascurabile in confronto al tempo di download dell'episodio. La funzione __choiceBestServer() viene eseguita ogni volta che viene richiamata la funzione download().
Ho fatto un po' di test e sembra funzionare.
Ho anche aggiunto una sezione di contributing che spiega come aggiungere nuovi server alla libreria.

repo: MainKronos/Sonarr-AnimeDownloader


text:
Browser tests setup

Also brings some fixes to the browser build.

Looks great :+1:
Just wondering, why did you rename the test file name?

authors: PaulLeCam mosic

repo: MainframeHQ/erebos


text:
Make Havelock compatible with SecurityFilterChain

Currently if the main security is done with SecurityFilterChain, whole app where Havelock is enabled fails, because it uses WebSecurityConfigurerAdapter which must not be mixed with the SecurityFilterChain.

Check wiki

repo: Majlanky/havelock


text:
Error handling

Is there any way to handle an exception thrown in onEventReceived?

You can override onError method in you bloc.
Also you can create IsolateBlocObserver to handle exceptions in all your bloc's.


text:
User Documentation

Tool: Use a static site generator like MkDocs.
Implementation: Create detailed guides, FAQs, and API documentation.
Hosting: Host the documentation on GitHub Pages or a similar service.

Hello @Malnati, do you still need help with this? I'd like to help

authors: Malnati Maryann-Agofure

repo: Malnati/autocommitmsg


text:
Max-width margin fix new - Man

Naming Rules
Name your PR like this: ISSUENUMBER-TITLE-YOURNAME
Description

set max-width on map-section
reduced slider component sizes to fit full screen

Related to
Make sure you include the issue number with a hash sign # so Github can link this PR to the right issue, like this:
Fixes #1
Checklist:

[ ] My code follows the style guidelines of this project
[ ] I have carefully reviewed my own code
[ ] I have commented my code
[ ] I have updated any documentation

repo: ManSangSin/Rhythm-Code

license: ISC


text:
Fix PowerVC reports

@Kuldip-Nanda and I found that some of the 'advanced_settings' key names didn't match the reports (both here and in the general "All Power" report in manageiq-providers-ibm_cloud).

Backported to najdorf in commit 24d810e22e279fb24f5387379494aa8573515ad9.
commit 24d810e22e279fb24f5387379494aa8573515ad9
Author: Adam Grare <adam@grare.com>
Date:   Fri Mar 11 13:17:30 2022 -0500

    Merge pull request #50 from jaywcarman/fix_powervc_reports

    Fix PowerVC reports

    (cherry picked from commit c1bf5a5e43f19620743b9b54af84574c540ea677)

authors: Fryguy jaywcarman


text:
Test failure:  TypeError: can't convert nil into an exact number spec/models/vmdb_database_connection_spec.rb:73

VmdbDatabaseConnection computes wait_time Failure/Error: expect(setting.wait_time).to be_kind_of(Fixnum) TypeError: can't convert nil into an exact number # /opt/rh/ruby200/root/usr/local/share/gems/bundler/gems/rails-8f014fba21f9/activesupport/lib/active_support/core_ext/time/calculations.rb:339:in -' # /opt/rh/ruby200/root/usr/local/share/gems/bundler/gems/rails-8f014fba21f9/activesupport/lib/active_support/core_ext/time/calculations.rb:339:in minus_with_duration' # /opt/rh/ruby200/root/usr/local/share/gems/bundler/gems/rails-8f014fba21f9/activesupport/lib/active_support/core_ext/time/calculations.rb:350:in minus_with_coercion' # ./app/models/vmdb_database_connection.rb:74:in wait_time_ms' # ./app/models/vmdb_database_connection.rb:65:in wait_time' # ./spec/models/vmdb_database_connection_spec.rb:73:in block (2 levels) in '

At: d5c9e555ce803fed4ba75084ab19e04ff8febea9
Subsequent build passed.

Same as #2115

repo: ManageIQ/manageiq


text:
Fix useless access modifiers on the app directory

Purpose or Intent
Fix usage of private/public/protected where it's useless on the app directory.  This is:

where it's either superfluous and unneeded (public when all things are public already)
where the intent was to make private class methods but you can't using the private method
where the intent was wrong and we luckily weren't correctly creating private class methods

rubocop --only UselessAccessModifier
Please review commit by commit
cc @Fryguy @chrisarcand @bdunne

Haha, looks like some code expected these methods to be public. Marking this wip.

@Fryguy @bdunne @chrisarcand This is now green.  I put back the few methods that need to be public: renice and handling_negatives since they are calling with a receiver.  Let me know if we need to denote "private" area with a comment or the actual private keyword.

This one is ready to go.  No rush, I just noticed that I didn't make it clear that it was ready for re-review.


text:
The last caller of queue_restart_apache has been removed

(which is the only caller of restart_apache)
https://github.com/ManageIQ/manageiq/pull/14007

Sorry @bdunne, there' this from the cockpit PR: https://github.com/ManageIQ/manageiq/blob/632c2d0c272e13fcd3f91d8334f4e402dcab6f32/app/models/miq_cockpit_ws_worker.rb#L41

😢

Nice
✂ 🔥 ✂ 🔥 ✂ 🔥
🍰  🍪 👏 🙇 😍 🎉

authors: bdunne jrafanie


text:
[WIP] Normalize event_where_clause to return relations for EventStream subclasses

Note:  This is WIP.  The goal is to be able to get EventStream results for a specific Vm, Template, Host, etc. or just the EmsEvents or just the MiqEvents.
TODO:

[ ] Figure out what to do with policy_events (did we really want to get PolicyEvent records or were we really interested in event_streams of the MiqEvent type?
[ ] Some classes are implemented strangely:

[ ] Storage, ContainerImage, ResourcePool:

Do NOT have _id columns in event_streams
Do NOT include EventMixin
Are included in MiqEvent::SUPPORTED_POLICY_AND_ALERT_CLASSES

[ ] AvailabilityZone, Container, PhysicalChassis, PhysicalSwitch

Do have id columns in event_streams
Do include EventMixin
Are NOT included in MiqEvent::SUPPORTED_POLICY_AND_ALERT_CLASSES

[x] Refactor the common cases where event_where_clause looks for class's _id column in event_streams.  For example:  PhysicalSwitch has a physical_switch_id column in EventStream so it's easy to default to do EmsEvent.where(:physical_switch_id => id) and MiqEvent.where(:physical_switch_id => id)
[ ] Update callers to use the new interface for event_where_clause:  ["ems_id = ?", 1] is now EmsEvent.where(:ems_id => 1)

Think we are missing ids in event streams because we tend to avoid db migrations, so we are missing the columns for newer classes

too bad this lost steam. Was really excited about this PR.
(though guess we have bigger initiatives at this time)

I think this is largely replaced by #22388 and https://github.com/ManageIQ/manageiq/pull/22361

authors: jrafanie kbrock


text:
Log external authentication groups on failed login.

@jrafanie @bdunne Please review.
From a diagnostic point of view, when group membership is the reason for failure, it's impossible to know why, but as soon as you see the incoming group names, it's easy to solve.  This moves that logging to info and audit from debug.  This also changes the debug to not print one-per-line which is overkill.

@jrafanie Updated.

Backported to petrosian in commit 6556b62784200e209b36a4aadc7b330b14a907f6.
commit 6556b62784200e209b36a4aadc7b330b14a907f6
Author: Joe Rafaniello <jrafanie@users.noreply.github.com>
Date:   Tue Mar 21 18:06:45 2023 -0400

    Merge pull request #22382 from Fryguy/log_groups_on_failure

    (cherry picked from commit 0ed0da837cb29b753cd65dbfb3ecc068a16393d7)


text:
Consolidate foreman refresh object index

Each list of foreman indexes are kept separate
This merged them into a single list to make more manageable
/cc @Fryguy You had suggested going this route before.
Since we're adding a few more classes, want to make this change now.
/cc @brandondunne @gmcculloug too many args once we add the tags

:+1:

authors: Fryguy kbrock


text:
filestyle gem and styling

Old:

New:

Should this be a rubygem or a gem from rails assets?  @skateman @martinpovolny @himdel Thoughts?

diff -w
And I think you're right, rails-assets is the way, we don't need to do any ruby integration. Especially since the gem is at 1.1.2 (vs 1.2.1) :)

@dclarizio Please review

@serenamarie125 Here's another handy Bootstrap extension to consider for Patternfly.

@dclarizio Please review

@miq-bot remove-label wip

@epwinchell will bring this up at next PatternFly meeting ( tomorrow )

authors: Fryguy epwinchell himdel serenamarie125


text:
Fixed dropdowns in Add new Group

https://bugzilla.redhat.com/show_bug.cgi?id=1265188
Fixed dropdowns.
Before:

After:

@epwinchell please review

@dclarizio Verified

@PanSpagetka Looks good for Roles, but Projects/Tenants drop down needs the same treatment:
Roles drop down shows the choose item:

Projects/Tenants drop down should show the a "<Choose a Project/Tenant>" item:

@PanSpagetka @epwinchell Now that I think about it, I think I like the bootstrap drop down's simple Choose implementation since we already have a label that says what is being chosen.  I think Choose might even disappear after a selection is made, so that's another benefit.  As I mentioned above that the second drop down needed the choose item added, I'm not even sure that can be done with the groupings being used in that one.  Anyway, I wouldn't be against solving this with the newer drop down's built in choose support.

I I was trying to fix Project/Tenant, but without any satisfying result so far. Now i will try to fix it with bootstrap.

@epwinchell @dclarizio please review

@dclarizio Looks good. I agree about Bootstrap's default "choose" implementation. We should probably handle that as a separate project.

@PanSpagetka Found an issue.  Editing an existing group, the Role drop down still contains the <Choose a Role> selection.  The Project/Tenant drop down doesn't have the choose selection (as it should be).  Choosing that selection sets the Role to nil, so we don't want that.

@dclarizio That nil behavior is common in many selects, so I think it should be here too. I did some more testing and found that when you can submit form with "Choose a Project/Tenant" chosen but cant with "Choose a Role" chosen. When I submit with "Choose a Project/Tenant selected" it will save first meaningful record.

@PanSpagetka Thanks . . .
I know the original way MOST drop downs worked was:

on add, Choose would be there and, of course, a value would be required to be chosen
on edit, there would be no Choose option, since the value was required, so no way to let the user clear it

In some cases, where a value wasn't required, there would be a <None> choice at the top for both add and edit, so the user could clear the choice and save.
I do still see a lot of these in the views, so I think we still maintain this functionality for the selects throughout the product.

@dclarizio With Martins help help I have been able to manage this:

In Add new group is Add button disabled until both selects have selected meaningful value. "Choose a Role" can be selected but cant be submitted.
In Edit group there isnt any "Choose" which can be selected.

First
-1.1
-Second

authors: PanSpagetka dclarizio epwinchell


text:
Simplify some helper specs

Create fewer records
Squash tests together when it is only expectations to reduce setup cost
Clean up contexts and descriptions to better describe what is being tested
Only build things where they will be used for tests
Let FactoryGirl handle default values for us

@miq-bot add_label test

@miq-bot add_label ui

@miq-bot add_label refactoring

@Fryguy @jrafanie Here's the daily deletion :scissors:


text:
Corrected condition for request approval flash message

https://bugzilla.redhat.com/show_bug.cgi?id=1302271

@miq-bot add_label bug


text:
[WIP] Apply RBAC in SSUI

The new attribute ?attributes=authorization in the /api entrypoint (https://github.com/ManageIQ/manageiq/pull/6597) retrieves all product features identifiers that the user is entitled to.
SSUI needs to hide/show the UI elements based on what the user is entitled to do.
https://trello.com/c/Dr2IKoAt/150-5-ssui-enforce-rbac-at-login

@miq-bot aa_label wip,ssui

@AparnaKarve Prefer that you split this PR into 2 - one for the API and the other (dependent on it) for the SSUI.

@chessbyte Currently it is based off @abellotti 's branch which deals with the API part.
I plan to repush with exclusively my changes which would only include the SSUI part once his PR gets merged.

@AparnaKarve Please recreate the SSUI portion of this PR in the new repo: https://github.com/ManageIQ/manageiq-ui-self_service

Closing in favor of https://github.com/ManageIQ/manageiq-ui-self_service/pull/3

authors: AparnaKarve Fryguy chessbyte


text:
chore: appease linters!

This appeases the various linters

@ManasviGoyal could you merge this? :)

@ManasviGoyal could you merge this? :)

Yes, Sure!


text:
Improved wording in info message issued by :meth:.SceneFileWriter.clean_cache

Overview: What does this pull request change?

This PR should fix the missing whitespace in an info message: … ago.You can change this ….
Further Information and Comments

Because this is such a tiny modification, I did not do any testing — I hope you don't mind.

Reviewer Checklist

[x] The PR title is descriptive enough for the changelog, and the PR is labeled correctly
[ ] If applicable: newly added non-private functions and classes have a docstring including a short summary and a PARAMETERS section
[ ] If applicable: newly added functions and classes are tested

Looking at this change, it seems like there still is no whitespace between the two parts of the string.

Guess the "no testing" part wasn't a great time-saver after all.
I apparently assumed the rich logger to accept the same syntax as print, i.e. the *args are concatenated using spaces.
Instead, this will probably happen:
>>> import manim
Manim Community v0.10.0
>>> manim.logger.info("Hello")
[10/01/21 13:23:28] INFO     Hello […]
>>> manim.logger.info("Hello", "World")
[…]
TypeError: not all arguments converted during string formatting

Sorry — I'll fix this in a new PR.

No worries. I just realized, we have fixed the error resulting from this in #2066, but the whitespace issue still remains I believe. :-)

authors: NicoWeio behackl

repo: ManimCommunity/manim


text:
怎么上传超过5M的图片呢

https://github.com/csznet/tgState 这个项目并不限制大小

你发这个项目存储在telegram，存储在telegraph会限制文件大小。

明白了

repo: MarSeventh/CloudFlare-ImgBed


text:
Fix index spam at the start of the project, Upgrade to Godot 4.2 (use tab bar method)

[ ] Merge after 1-2 weeks, when the vast majority of people use Godot 4.2

Will probably wait a bit longer with the tab bar change.


text:
/usr/bin/ld: error: src/x86_64-fma/2d-fourier-16x16.py.o: unaligned data

It fails on FreeBSD 12 with this error:
[43/43] : && /usr/bin/cc -fPIC -O2 -pipe  -fstack-protector-strong -isystem /usr/local/include -fno-strict-aliasing -O2 -pipe  -fstack-protector-strong -isystem /usr/local/include -fno-strict-aliasing  -fstack-protector-strong -L/usr/local/lib -shared -Wl,-soname,libnnpack.so -o libnnpack.so src/x86_64-fma/2d-fourier-8x8.py.o src/x86_64-fma/2d-fourier-16x16.py.o src/x86_64-fma/2d-winograd-8x8-3x3.py.o src/x86_64-fma/blas/s8gemm.py.o src/x86_64-fma/blas/c8gemm.py.o src/x86_64-fma/blas/s4c6gemm.py.o src/x86_64-fma/blas/conv1x1.py.o src/x86_64-fma/blas/sgemm.py.o src/x86_64-fma/max-pooling.py.o src/x86_64-fma/relu.py.o src/x86_64-fma/softmax.py.o src/x86_64-fma/blas/sdotxf.py.o src/x86_64-fma/blas/shdotxf.py.o CMakeFiles/nnpack.dir/src/init.c.o CMakeFiles/nnpack.dir/src/convolution-inference.c.o CMakeFiles/nnpack.dir/src/fully-connected-inference.c.o CMakeFiles/nnpack.dir/src/pooling-output.c.o CMakeFiles/nnpack.dir/src/relu-output.c.o CMakeFiles/nnpack.dir/src/softmax-output.c.o CMakeFiles/nnpack.dir/src/fully-connected-output.c.o CMakeFiles/nnpack.dir/src/relu-input-gradient.c.o CMakeFiles/nnpack.dir/src/convolution-input-gradient.c.o CMakeFiles/nnpack.dir/src/convolution-kernel-gradient.c.o CMakeFiles/nnpack.dir/src/convolution-output.c.o CMakeFiles/nnpack.dir/src/x86_64-fma/softmax.c.o  -Wl,-rpath,/wrkdirs/usr/ports/science/nnpack/work/.build/deps/cpuinfo: deps/cpuinfo/libcpuinfo.so -lpthreadpool && :
FAILED: libnnpack.so
: && /usr/bin/cc -fPIC -O2 -pipe  -fstack-protector-strong -isystem /usr/local/include -fno-strict-aliasing -O2 -pipe  -fstack-protector-strong -isystem /usr/local/include -fno-strict-aliasing  -fstack-protector-strong -L/usr/local/lib -shared -Wl,-soname,libnnpack.so -o libnnpack.so src/x86_64-fma/2d-fourier-8x8.py.o src/x86_64-fma/2d-fourier-16x16.py.o src/x86_64-fma/2d-winograd-8x8-3x3.py.o src/x86_64-fma/blas/s8gemm.py.o src/x86_64-fma/blas/c8gemm.py.o src/x86_64-fma/blas/s4c6gemm.py.o src/x86_64-fma/blas/conv1x1.py.o src/x86_64-fma/blas/sgemm.py.o src/x86_64-fma/max-pooling.py.o src/x86_64-fma/relu.py.o src/x86_64-fma/softmax.py.o src/x86_64-fma/blas/sdotxf.py.o src/x86_64-fma/blas/shdotxf.py.o CMakeFiles/nnpack.dir/src/init.c.o CMakeFiles/nnpack.dir/src/convolution-inference.c.o CMakeFiles/nnpack.dir/src/fully-connected-inference.c.o CMakeFiles/nnpack.dir/src/pooling-output.c.o CMakeFiles/nnpack.dir/src/relu-output.c.o CMakeFiles/nnpack.dir/src/softmax-output.c.o CMakeFiles/nnpack.dir/src/fully-connected-output.c.o CMakeFiles/nnpack.dir/src/relu-input-gradient.c.o CMakeFiles/nnpack.dir/src/convolution-input-gradient.c.o CMakeFiles/nnpack.dir/src/convolution-kernel-gradient.c.o CMakeFiles/nnpack.dir/src/convolution-output.c.o CMakeFiles/nnpack.dir/src/x86_64-fma/softmax.c.o  -Wl,-rpath,/wrkdirs/usr/ports/science/nnpack/work/.build/deps/cpuinfo: deps/cpuinfo/libcpuinfo.so -lpthreadpool && :
/usr/bin/ld: error: src/x86_64-fma/2d-fourier-16x16.py.o: unaligned data
cc: error: linker command failed with exit code 1 (use -v to see invocation)
ninja: build stopped: subcommand failed.

Looking into it, it seems to be a very bad idea to compile the python code into binaries. People who write in Python usually believe that Python is "good enough" for most everything. If this isn't true, then this code should be rewritten in a more performant language, like C++ (or C or Rust). Writing in Python first, and then discovering that this was a bad idea and trying to accelerate it using some custom-written compiler isn't a good idea IMO, because it leads to errors like this.

I agree. I like NNPACK, but the avx2(/avx512?) part should been written with psimd.h like it does for the SSSE4.1 instruction set. Now there's a dependency on PeachPy. When porting NNPACK for Windows the src/x86_64-fma/2d-fourier-16x16.py is the only kernel script were things go wrong when generating object code for the Windows platform.

repo: Maratyszcza/NNPACK


text:
Cannot commend; license error

Description
The new 'auto-accquire cs:go license' feature is not working for me on accounts that aleady own cs:go. I'm currently on linux, but I'm sure that this is not the cause of the problem.
Reproduction Steps

Start Titan (mono Titan.exe)
Add account that already owns cs:go
Click on commend tab, enter Steam-ID, select correct index
Click on 'Commend' button

Errors
15:36:00 [Main] ERROR GC - xxxxx (Protected) - Unable to request free license for app 730. Aborting.
15:36:00 [Main] DEBUG GC - xxxxx (Protected) - Successfully disconnected from Steam.
15:36:00 [Main] ERROR ThreadManager - FAIL! Titan was not able to commend target xxxxxxxxxxxxxxxxxx.

System Information
Operating System:  Ubuntu 18.10 (All up to date)
Titan version: 1.6.1-e46055d

Does not work on my Windows 10 machine too, same commit version.

This is now fixed.

authors: LemuelKL Marc3842h wintersim


text:
Update Mentoring-IKG.md

for meeting 03-March 2021

I'll close this since the mentoring notes are in your folder 🥰

authors: Ismael-KG MariaEriksson


text:
[PATCH] Enable color functionality for Windows

I have been using GOMP on WSL (Windows Subsystem for Linux) for a while now and it's been great. I now need to use the "Window-side" terminals like Git Bash and Powershell, and this single line change enables the color functionality of GOMP to work in those terminals.

Thanks for the PR! Unfortunately the color command doesn't exist on unix systems, so running this on MacOS/Linux prints this before the diff:

I think we'll want to check the platform first (if platform.system() == 'Windows') and conditionally run this.

Hi @jeremy-mf, thanks for the comment! My apologies, I thought I had previously tested this change on my personal UNIX devices before I opened this PR. I've added your suggested conditional check and tested on macOS, Ubuntu, and Windows 11 (both Git Bash and WSL terminals).

Thank you!

I have published a new version of GOMP with this change. Thanks again for the PR! https://pypi.org/project/gomp/1.1.1/

authors: jeremy-mf rocketfinch

repo: MarkForged/GOMP


text:
Add !help command

Feature request
Adding a command that shows every command would be really helpful. Like
!fish: Fish meme
!cat: Cat meme
!abstimmung: Abstimmung

will create a pr :)

repo: MarkenJaden/LandOfRails-Discord-Bot


text:
About UDP version

HI, does the udp version reliable? or default udp.

There is no implementation for a reliable UDP right now. If there is something provided by .NET I can look to add it.

Hello! It is a good idea to start a new unity network. They have a simple 32 bit header.
https://github.com/Unity-Technologies/multiplayer/blob/b7c2798078ab2408caf232b8775aa6ff9ac71ccd/com.unity.transport/Runtime/NetworkProtocols.cs#L27-L29
It's pretty simple, and you can peep here.
http://non6.blogspot.com/2019/04/unity-networking-dotnetty.html

32bit header doesn't look good at all, but found an RUDP solution, now all i have to do is deal with collision server-side.

authors: Adevien MarkioE iamkisly

repo: MarkioE/Networker


text:
Create a Recipe app

Hi,
In this project me and @Tobby8629 will work on creating a recipe app based on the requirements that we also implement on the kanban board (see the link bellow). In this board we split all the activities so we can have equal contribution on the project.
https://github.com/users/MarkoKermi/projects/2/views/1

Hi @TEAM,
Good job so far!
There are some issues that you still need to work on to go to the next project but you are almost there!

Highlights

Correct project table ✔
Good implementations ✔

Required Changes ♻

[ ] [REQUIRED] Good job so far! Kindly you forgot to assign your coding partner(@Tobby8629) these tasks: {#12, #16, #17, #18, #19} and also implement group tasks and assign to all team members 🙏🏼

Optional suggestions
Every comment with the [OPTIONAL] prefix is not crucial enough to stop the approval of this PR. However, I strongly recommend you to take them into account as they can make your code better.
Cheers and Happy coding!👏👏👏
Feel free to leave any questions or comments in the PR thread if something is not 100% clear.
Please, remember to tag me in your question so I can receive the notification.
Please, do not open a new Pull Request for re-reviews. You should use the same Pull Request submitted for the first review, either valid or invalid unless it is requested otherwise.

As described in the Code reviews limits policy you have a limited number of reviews per project (check the exact number in your Dashboard). If you think that the code review was not fair, you can request a second opinion using this form.

Thx for the review we just did the changes that were required here is the link bellow:
https://github.com/users/MarkoKermi/projects/4

STATUS: CHANGES REQUIRED ♻
Hi Team,
Great work on making the changes requested by a previous reviewer 👏
You've done well implementing some of the requested changes, but there are still some which aren't addressed yet.

Highlights
✅ Good work so far
Required Changes ♻
Only one task has an assignee on the project link you submitted as updated link.

Cheers and Happy coding!👏👏👏
Feel free to leave any questions or comments in the PR thread if something is not 100% clear.
Please, remember to tag me in your question so I can receive the notification.
Please, do not open a new Pull Request for re-reviews. You should use the same Pull Request submitted for the first review, either valid or invalid unless it is requested otherwise.

As described in the Code reviews limits policy  you have a limited number of reviews per project (check the exact number in your Dashboard). If you think that the code review was not fair, you can request a second opinion using this form.

@bobb-Rob Thx for the review I submitted the wrong link here is the new one
https://github.com/users/MarkoKermi/projects/6

authors: MarkoKermi bobb-Rob mukhammadrizooff


text:
Clean up the warnings when running gatsby develop

Try to clean up the code to avoid warnings about dependency inconsistencies and deprecated packages.
Steps to Reproduce

Run gatsby develop
Notice the 6 warnings about version incompatibilities and deprecated packages.

warn Plugin gatsby-plugin-react-helmet is not compatible with your gatsby version 3.0.3 - It requires
gatsby@^2.0.0
warn Plugin gatsby-plugin-emotion is not compatible with your gatsby version 3.0.3 - It requires
gatsby@^2.0.0
warn Plugin gatsby-plugin-postcss is not compatible with your gatsby version 3.0.3 - It requires
gatsby@^2.0.0
warn Plugin gatsby-theme-codebushi is not compatible with your gatsby version 3.0.3 - It requires
gatsby@^2.18.7
...
warn [deprecated gatsby-theme-codebushi] node.fs is deprecated. Please set "resolve.fallback.fs = false".
warn [deprecated gatsby-theme-codebushi] node.fs is deprecated. Please set "resolve.fallback.fs = false".

Resolved by Pull Request #47.
No need to upgrade, because these packages are no longer referenced.

repo: Marmalade-ai/company-website


text:
Adding last.fm auth status/button to the player

OS:
Windows 10
Issue Descriptions:
Since I don't check last.fm as often as I used to, it sometimes happens that I'm left without scrobbles for days after an update - I just lose my auth token with last.fm and have to reauth. Since this thing usually goes unnoticed - I have to check on either last.fm or manually in settings, I am making a proposal, to add a last.fm status / button / indicator / something minimalistic, just so we know we're currently logged in and authorized on last.fm. Somewhere, I dunno, near our picture or whatever, just so we know when to reauth again if something goes bleh (maybe clicking the logo pops the auth window).
Steps to Reproduce:
N/A

Happened to me aswell. For no reason Last.fm scrobbling is disabled from time to time and I have to reauth. Would like to at least have a notification if I'm not authed with Last.fm.

authors: Marwelln rlevarski


text:
Uncaught Exception: Attempting to call a function in a renderer window that has been closed or released. Function provid

An uncaught exception was reported.
Info:
OS: win32
Arch: ia32
GPMDP Version: 3.0.1
Time: Sat Mar 12 2016 23:00:50 GMT 0100 (Mitteleuropäische Zeit)
Error:
Attempting to call a function in a renderer window that has been closed or released. Function provid
Error: Attempting to call a function in a renderer window that has been closed or released. Function provided here: Object.<anonymous> (C:\Users\david\AppData\Local\GPMDP_3\app-3.0.1\resources\app\build\inject\GPMInject\interface\mouseButtonNavigation.js:8:8.
    at BrowserWindow.callIntoRenderer (C:\Users\david\AppData\Local\GPMDP_3\app-3.0.1\resources\atom.asar\browser\lib\rpc-server.js:201:19)
    at emitTwo (events.js:92:20)
    at BrowserWindow.emit (events.js:172:7)

This issue was created automatically inside the uncaughtException handler

Closing this automatically reported issue as a duplicate of #470


text:
resized OSX icons to 90% of their original size

Again, would be nice of someone with OSX could test it out, but i doubt that it wont work.
Oh and btw: the icon resolution is still the same, just the actual picture of the icons got resized, thus resulting in somewhat of a padding

Woops, forgot to update the branch again, screw me.

@berryelectronics Nowadays I can fix these "merge" commits on GitHub.  But it would probably be good to get in the habit of updating with a rebase instead of a merge
Merging adds an extra "merge" commit which when PR'ing back to the main repository looks kinda funky in the commit history.
Rebasing still updates your branch but doesn't add an extra commit.

ok, thanks for the tip :)
Samuel Attard notifications@github.com schrieb am So., 4. Sep. 2016 um
12:28 Uhr:

@berryelectronics https://github.com/berryelectronics Nowadays I can
fix these "merge" commits on GitHub. But it would probably be good to get
in the habit of updating with a rebase instead of a merge
Merging adds an extra "merge" commit which when PR'ing back to the main
repository looks kinda funky in the commit history.
Rebasing still updates your branch but doesn't add an extra commit.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/MarshallOfSound/Google-Play-Music-Desktop-Player-UNOFFICIAL-/pull/1579#issuecomment-244595087,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AMCBvBLEmlfIIblYg1tOtbi75qvSkEItks5qmp1XgaJpZM4J0fW7
.

--
Matjas

authors: MarshallOfSound berryelectronics


text:
Main

[#57] Icon fix

Pull request for #

Definition Of Done

[ ] Meets acceptance criteria of story / Fixed bug
[ ] Added new tests
[ ] Updated documentation

Closing this because of this:
https://github.com/Marvin-Brouwer/five-dice/issues/55#issuecomment-1493248345

authors: Marvin-Brouwer shindodkar

repo: Marvin-Brouwer/five-dice


text:
add function to save new task to local storage

add function to save new task to local storage

did not tread input. code does not work for now


text:
ACL plugin ignored with OAUTH2 password grant after access_token provided.

On version 0.9.2 it appears the ACL plugin is ignored after an access_token has been issued from /oauth2/token which means that, with a single access_token, any API can be accessed.
I hope I'm wrong, but this seems to be what is happening.... See below.
Call to get a token on a my API called "consumer"..
`http --form --verify=no POST https://kong:8443/consumer/oauth2/token \

grant_type=password
client_id=b30b004c5be94346b8d9ead99d01eb91
client_secret=c45d30b2f6ef4bbd92012ce9cf0a154b
username=brad
password=xQ845c
provision_key=8aeb4eba0ab84c97bfb6a0f51ab5bcf5
authenticated_userid=brad
HTTP/1.1 200 OK
Connection: keep-alive
Content-Type: application/json; charset=utf-8
Date: Wed, 08 Jun 2016 13:55:46 GMT
Server: kong/0.8.1
Transfer-Encoding: chunked
cache-control: no-store
pragma: no-cache

{
"access_token": "9d17ce911bbc48ebaa0ee29e8e5b8ad5",
"expires_in": 120,
"refresh_token": "b27577932f1a4c9cb50805ce8e6cb45f",
"token_type": "bearer"
}`
Now I use the above access_token on a DIFFERENT API.
`root@82d061c95ae9:~/mnt/specs# http --verify=no --print HBhb GET https://kong:8443/merchant/v1.0/hello.json \

Authorization:"Bearer 9d17ce911bbc48ebaa0ee29e8e5b8ad5"
GET /merchant/v1.0/hello.json HTTP/1.1
Accept: /
Accept-Encoding: gzip, deflate
Authorization: Bearer 9d17ce911bbc48ebaa0ee29e8e5b8ad5
Connection: keep-alive
Host: kong:8443
User-Agent: HTTPie/0.9.2

HTTP/1.1 200 OK
Accept-Ranges: bytes
Connection: keep-alive
Content-Length: 59
Content-Type: application/json
Date: Wed, 08 Jun 2016 13:56:04 GMT
Last-Modified: Tue, 07 Jun 2016 13:35:26 GMT
Server: Jetty(9.2.z-SNAPSHOT)
Via: kong/0.8.1
X-Kong-Proxy-Latency: 6
X-Kong-Upstream-Latency: 16
{
"message": "Hello World -- this is the Merchant API"
}`
This just seems wrong to me. It should not be possible to use an access token obtained from one API on another, especially if ACL plugin is installed. Here is my ACL stuff.
on the merchant API:
`root@82d061c95ae9:~/mnt/specs# http get kong:8001/apis/merchant/plugins
HTTP/1.1 200 OK
Access-Control-Allow-Origin: *
Connection: keep-alive
Content-Type: application/json; charset=utf-8
Date: Wed, 08 Jun 2016 13:57:16 GMT
Server: kong/0.8.1
Transfer-Encoding: chunked
{
"data": [
{
"api_id": "0e56b9c3-705c-49f7-82b7-b23ec094dcc6",
"config": {
"whitelist": [
"merchant_group",
"admin_group"
]
},
"created_at": 1465394043000,
"enabled": true,
"id": "819a5e66-8a7a-4389-937a-4965ab294d1c",
"name": "acl"
},
{
"api_id": "0e56b9c3-705c-49f7-82b7-b23ec094dcc6",
"config": {
"accept_http_if_already_terminated": false,
"enable_authorization_code": false,
"enable_client_credentials": false,
"enable_implicit_grant": false,
"enable_password_grant": true,
"hide_credentials": false,
"mandatory_scope": false,
"provision_key": "c94b7d4d849d42fe8da3821cb64055f7",
"token_expiration": 120
},
"created_at": 1465394041000,
"enabled": true,
"id": "e2734392-b0b8-4eb4-9b8a-1731d031a72d",
"name": "oauth2"
},
{
"api_id": "0e56b9c3-705c-49f7-82b7-b23ec094dcc6",
"config": {
"_cert_der_cache": "MIICHTCCAYYCCQDOK50pXv6JwjANBgkqhkiG9w0BAQsFADBTMQswCQYDVQQGEwJVSzEQMA4GA1UECAwHRW5nbGFuZDEPMA0GA1UEBwwGTG9uZG9uMQ8wDQYDVQQKDAZBcGkgQ28xEDAOBgNVBAMMB2FwaS5jb20wHhcNMTYwNTE4MjEzNDA3WhcNMTYwNjE3MjEzNDA3WjBTMQswCQYDVQQGEwJVSzEQMA4GA1UECAwHRW5nbGFuZDEPMA0GA1UEBwwGTG9uZG9uMQ8wDQYDVQQKDAZBcGkgQ28xEDAOBgNVBAMMB2FwaS5jb20wgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBAKj7b3I/hAkdRDgWyDyNB/S6sqhcglB6XIBMfjX1Vl4/MrFO/L7Cf5mE0z5Ddf1J28LXzKI4bF1D1qXOZxBZBuWeSMJLtlcrW/8bZ1L/x7FAye1qhLJSdbhRPO4JnBO8g/WLtAvdnSrZRhoqyNUUtu+wfdrqzVKoHNNfbAPTtK+zAgMBAAEwDQYJKoZIhvcNAQELBQADgYEAabmbhOnHYIeOfMXHBfouhQqZXNf2DXBAComDLFmbPz28GboHt9aWLMcg5JtcOV2dy1WluBa840FYcHQkW0Vm0xp6Od0htFcmvVzUkq5F6vm8AX/6gmRNKzt4OyoJH662Ne7cob/wD3myVi3zHGj2x5lUbIBxpsDD7CqeNfcOLW4=",
"_key_der_cache": "MIICXAIBAAKBgQCo+29yP4QJHUQ4Fsg8jQf0urKoXIJQelyATH419VZePzKxTvy+wn+ZhNM+Q3X9SdvC18yiOGxdQ9alzmcQWQblnkjCS7ZXK1v/G2dS/8exQMntaoSyUnW4UTzuCZwTvIP1i7QL3Z0q2UYaKsjVFLbvsH3a6s1SqBzTX2wD07SvswIDAQABAoGAJfw/VSNJ/vKBP0p/wHzDaRP+zTHeaVDYMk7/oAmCXLVAI/NphUgbftsI0VpAz6smp2nzKhQc5+oz+hmnuVkJ335uExZpjvXF3a6m/9Dh7HJ5NNqK/YcakiMbG3Q6LmqVmyHTjRGoidTgrfG5uqARDXBowmz50TNWlO68vh1tvWECQQDR20lFfuEhAivNWKHgKLlSKrggnP454pqQgOQ/aMh8Vx1h+2CgUKOKJ6DAhhFbPbyuol2AFQhpR3X3V4tNdSc9AkEAziNZqt8FuepGDfVq2jig+FMJ2abIAjDy1kKzipJV8RL1FqEf7FzxAcgqRcZExUulHWoAsDlmKvUx8Nf7ydAhrwJBAIVIB24q2iLTtSwTCaRLWP/1f8G+07vBzrbOFaisDQDjdxbex4yqCmPZLUB5JZbUS/yBxG5vbUsoBqUTpbaJHGUCQHxWIj3IrAGJ55t/zmW2BpICNEzOJpH7yF2oefc5cREqKB7wLPs6zDwQ6j6P6uc+S2fEionA9Xkv0GG/RSZjng0CQGw7XStXTkLtSNBNPJ1im0GO2Up9EBbZgGckxuNsRunJ1YkmF+v2vqRkU+Nqhv6KxxcqHTSyTjCEzFiZnMwq5eY=",
"accept_http_if_already_terminated": false,
"cert": "-----BEGIN CERTIFICATE-----\nMIICHTCCAYYCCQDOK50pXv6JwjANBgkqhkiG9w0BAQsFADBTMQswCQYDVQQGEwJV\nSzEQMA4GA1UECAwHRW5nbGFuZDEPMA0GA1UEBwwGTG9uZG9uMQ8wDQYDVQQKDAZB\ncGkgQ28xEDAOBgNVBAMMB2FwaS5jb20wHhcNMTYwNTE4MjEzNDA3WhcNMTYwNjE3\nMjEzNDA3WjBTMQswCQYDVQQGEwJVSzEQMA4GA1UECAwHRW5nbGFuZDEPMA0GA1UE\nBwwGTG9uZG9uMQ8wDQYDVQQKDAZBcGkgQ28xEDAOBgNVBAMMB2FwaS5jb20wgZ8w\nDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBAKj7b3I/hAkdRDgWyDyNB/S6sqhcglB6\nXIBMfjX1Vl4/MrFO/L7Cf5mE0z5Ddf1J28LXzKI4bF1D1qXOZxBZBuWeSMJLtlcr\nW/8bZ1L/x7FAye1qhLJSdbhRPO4JnBO8g/WLtAvdnSrZRhoqyNUUtu+wfdrqzVKo\nHNNfbAPTtK+zAgMBAAEwDQYJKoZIhvcNAQELBQADgYEAabmbhOnHYIeOfMXHBfou\nhQqZXNf2DXBAComDLFmbPz28GboHt9aWLMcg5JtcOV2dy1WluBa840FYcHQkW0Vm\n0xp6Od0htFcmvVzUkq5F6vm8AX/6gmRNKzt4OyoJH662Ne7cob/wD3myVi3zHGj2\nx5lUbIBxpsDD7CqeNfcOLW4=\n-----END CERTIFICATE-----",
"key": "-----BEGIN RSA PRIVATE KEY-----\nMIICXAIBAAKBgQCo+29yP4QJHUQ4Fsg8jQf0urKoXIJQelyATH419VZePzKxTvy+\nwn+ZhNM+Q3X9SdvC18yiOGxdQ9alzmcQWQblnkjCS7ZXK1v/G2dS/8exQMntaoSy\nUnW4UTzuCZwTvIP1i7QL3Z0q2UYaKsjVFLbvsH3a6s1SqBzTX2wD07SvswIDAQAB\nAoGAJfw/VSNJ/vKBP0p/wHzDaRP+zTHeaVDYMk7/oAmCXLVAI/NphUgbftsI0VpA\nz6smp2nzKhQc5+oz+hmnuVkJ335uExZpjvXF3a6m/9Dh7HJ5NNqK/YcakiMbG3Q6\nLmqVmyHTjRGoidTgrfG5uqARDXBowmz50TNWlO68vh1tvWECQQDR20lFfuEhAivN\nWKHgKLlSKrggnP454pqQgOQ/aMh8Vx1h+2CgUKOKJ6DAhhFbPbyuol2AFQhpR3X3\nV4tNdSc9AkEAziNZqt8FuepGDfVq2jig+FMJ2abIAjDy1kKzipJV8RL1FqEf7Fzx\nAcgqRcZExUulHWoAsDlmKvUx8Nf7ydAhrwJBAIVIB24q2iLTtSwTCaRLWP/1f8G+\n07vBzrbOFaisDQDjdxbex4yqCmPZLUB5JZbUS/yBxG5vbUsoBqUTpbaJHGUCQHxW\nIj3IrAGJ55t/zmW2BpICNEzOJpH7yF2oefc5cREqKB7wLPs6zDwQ6j6P6uc+S2fE\nionA9Xkv0GG/RSZjng0CQGw7XStXTkLtSNBNPJ1im0GO2Up9EBbZgGckxuNsRunJ\n1YkmF+v2vqRkU+Nqhv6KxxcqHTSyTjCEzFiZnMwq5eY=\n-----END RSA PRIVATE KEY-----",
"only_https": true
},
"created_at": 1465394040000,
"enabled": true,
"id": "42b28a68-1fdf-4b2d-bfa6-ab38213f562d",
"name": "ssl"
}
],
"total": 3
}`
And the set-up of the consumer who is accessing, who is not permissioned for the Merchant API..
`root@82d061c95ae9:~/mnt/specs# http get kong:8001/consumers/81db2d22-71ab-409a-8097-c22c50745c3b/oauth2
HTTP/1.1 200 OK
Access-Control-Allow-Origin: *
Connection: keep-alive
Content-Type: application/json; charset=utf-8
Date: Wed, 08 Jun 2016 14:02:58 GMT
Server: kong/0.8.1
Transfer-Encoding: chunked
{
"data": [
{
"client_id": "b30b004c5be94346b8d9ead99d01eb91",
"client_secret": "c45d30b2f6ef4bbd92012ce9cf0a154b",
"consumer_id": "81db2d22-71ab-409a-8097-c22c50745c3b",
"created_at": 1465394046000,
"id": "fb4c9c29-6590-4953-b193-35d22eda7f25",
"name": "RBS%20plc%20mobile%20app",
"redirect_uri": "http://wiremock:8080/oauth_redirect_url"
}
],
"total": 1
}
root@82d061c95ae9:~/mnt/specs# http get kong:8001/consumers/81db2d22-71ab-409a-8097-c22c50745c3b/acls
HTTP/1.1 200 OK
Access-Control-Allow-Origin: *
Connection: keep-alive
Content-Type: application/json; charset=utf-8
Date: Wed, 08 Jun 2016 14:03:16 GMT
Server: kong/0.8.1
Transfer-Encoding: chunked
{
"data": [
{
"consumer_id": "81db2d22-71ab-409a-8097-c22c50745c3b",
"created_at": 1465394048000,
"group": "consumer_group",
"id": "5efed488-36cc-4752-a8bd-53fb52f83942"
}
],
"total": 1
}
root@82d061c95ae9:~/mnt/specs#`

Hi @bradwood
Maybe you have encountered the same issue I had.
Because of ACL, having prio 850, and OAuth higher, the consumer_id passed to ACL is the consumer_id of the authenticated user.
If you have defined the ACL on a consuming application, it will seem that the ACL is not applied.
Are you using only ACL en OAuth policies or key-auth as well?
regards

Just ACL and OAUTH password grant type. how did you solve your problem?

Hey @thefosk --- any updates on this one? Or thoughts as to why it's happening?

I upgraded to latest and this now seems resolved!

repo: Mashape/kong


text:
remove heroku installation instructions

It looks like the heroku kong app and buildpack are outdated and no longer maintained.  It might be good to remove it from the Readme in this repo, and from the installation docs.

Thanks, we noticed the PR on getkong.org but are still waiting for updates on it.

authors: colllin thibaultcha


text:
Kong serf check needs some cleanup

Summary
Serf version checking has some mismatched function signatures that obscure invalid Serf version errors
Steps To Reproduce
N/A
Additional Details & Logs
local function check_serf_bin (https://github.com/Mashape/kong/blob/release/0.10.0/kong/cmd/utils/serf_signals.lua#L47) compares only a boolean result of the first value of check_version; however, check_version returns a nil and an error string on version mismatch (https://github.com/Mashape/kong/blob/release/0.10.0/kong/cmd/utils/serf_signals.lua#L31). This error is not bubbled up or logged, instead, the user is only told the serf executable could not be found (https://github.com/Mashape/kong/blob/release/0.10.0/kong/cmd/utils/serf_signals.lua#L55). Systems running an invalid Serf version are never informed about this condition.
Additionally, the current version of Serf available for download (v0.8.1) is not compatible based on (https://github.com/Mashape/kong/blob/master/kong/meta.lua#L22), yet this is not clearly identified. https://getkong.org/install/source/ indicates v0.8 should be installed, but if Serf follows semantic versioning, should v0.8.1 not also be available? Either Kong should more flexibly respect semantically-versioned dependencies, or the strict version checking should be more clearly documented.

we've been defensive with versions, only versions we know that work. Hence the strictness.
not sure wether it's worthwhile to update while we progressing to drop Serf...

Sounds like we should:

Document that semver isn't followed
Log and let the user know when an invalid serf version is found
Audit other dependency checkers and make sure they aren't swallowing up errors

I'll have a PR for the second item up shortly. First item sounds like it might fit on getkong.org/install/source? Third item sounds like a backlogged bug ;)

not sure wether it's worthwhile to update while we progressing to drop Serf...

+1
However,

we've been defensive with versions, only versions we know that work. Hence the strictness.

As recently discussed, I think we should be less strict with those and avoid trying to prevent forward compatibility. We should only enforce versions we never tested (< 0.7), but we shouldn't enforce users from using future releases. If they're not tested against, they are on their own, but at least we should be permissive enough to allow it.

https://github.com/Mashape/kong/commit/803646a56376003ad2b1377da34914509db17d30 addresses concerns about dep versions, but I'm not sure where to point the PR given the imminent release of 0.10. Same with https://github.com/Mashape/kong/commit/44c63455c5285e31e6849622d997847353b38c5a and serf search path logging.

btw Serf is in the 0.x phase, hence SemVer does not apply. Only works from 1.x onwards, 0.x is considered unstable.
but if we want the Serf dependency to be less strict then simply specify
serf = {"0.7.0", "0.8.999"},

or even better (but this requires changes elsewhere)
serf = version.set("0.7.0","0.9.0"):disallowed("0.9.0")

the latter has a better error message.

semver doesn't apply to openresty either ;) does this mean we cant imply any sort of minimum version requirement?

we recently saw a breaking change in an y.y.y.x release (enabling lua 5.2 compatibility)
I'm confident that for Serf allowing the whole 7.x and 8.x should be ok though.

Given that Serf is going to be dropped, and the following PRs handled the immediate-term work to be done here:
https://github.com/Mashape/kong/pull/2156
https://github.com/Mashape/kong/pull/2157
Any objections to closing this?

All good, thanks! :)

authors: Tieske p0pr0ck5 thibaultcha


text:
Cant able to route live socket data via kong 0.10.3

Summary
SUMMARY_GOES_HERE
Steps To Reproduce

I want to route api along with the sockets
When I start the kong It is connecting the socket.
But after If I push any live data to socket from server Its not coming to front end

Additional Details & Logs

Kong version (0.10.3)
Kong debug-level startup logs (kong start --nginx-conf /usr/local/kong/custom_nginix.template -v 2017/07/25 19:04:04 [verbose] Kong: 0.10.3 2017/07/25 19:04:04 [verbose] reading config file at /etc/kong/kong.conf 2017/07/25 19:04:04 [verbose] prefix in use: /usr/local/kong 2017/07/25 19:04:04 [verbose] preparing nginx prefix directory at /usr/local/kong 2017/07/25 19:04:04 [verbose] saving serf identifier to /usr/local/kong/serf/serf.id 2017/07/25 19:04:04 [verbose] saving serf shell script handler to /usr/local/kong/serf/serf_event.sh 2017/07/25 19:04:04 [verbose] SSL enabled, no custom certificate set: using default certificate 2017/07/25 19:04:04 [verbose] default SSL certificate found at /usr/local/kong/ssl/kong-default.crt 2017/07/25 19:04:04 [verbose] Admin SSL enabled, no custom certificate set: using default certificate 2017/07/25 19:04:04 [verbose] admin SSL certificate found at /usr/local/kong/ssl/admin-kong-default.crt 2017/07/25 19:04:04 [verbose] running datastore migrations 2017/07/25 19:04:04 [verbose] migrations up to date 2017/07/25 19:04:04 [verbose] serf agent not running, deleting /usr/local/kong/pids/serf.pid 2017/07/25 19:04:04 [verbose] waiting for serf agent to be running 2017/07/25 19:04:04 [verbose] serf agent started 2017/07/25 19:04:04 [verbose] auto-joining serf cluster 2017/07/25 19:04:04 [verbose] successfully joined cluster at 172.16.23.15:7946 2017/07/25 19:04:04 [verbose] registering serf node in datastore 2017/07/25 19:04:04 [verbose] cluster joined and node registered in datastore 2017/07/25 19:04:05 [info] Kong started)
Kong error logs (<KONG_PREFIX>/logs/error.log)
Kong configuration (

worker_processes ${{NGINX_WORKER_PROCESSES}};
daemon ${{NGINX_DAEMON}};
pid pids/nginx.pid;
error_log logs/error.log ${{LOG_LEVEL}};
events {
    use epoll;
    multi_accept on;
}
http {
    resolver ${{DNS_RESOLVER}} ipv6=off;
    charset UTF-8;
    error_log logs/error.log ${{LOG_LEVEL}};
    access_log logs/access.log;
    client_max_body_size 0;
    proxy_ssl_server_name on;
    underscores_in_headers on;

    real_ip_header X-Forwarded-For;
    set_real_ip_from 0.0.0.0/0;
    real_ip_recursive on;

    lua_package_path '?/init.lua;./kong/?.lua;;';
    lua_package_cpath ';;';
    lua_code_cache on;
    lua_socket_pool_size 30;
    lua_max_running_timers 4096;
    lua_max_pending_timers 16384;
    lua_shared_dict kong 4m;
    lua_shared_dict cache 128m;
    lua_shared_dict cache_locks 100k;
    lua_shared_dict process_events 1m;
    lua_shared_dict cassandra 5m;
    lua_socket_log_errors off;
    init_by_lua_block {
        require 'resty.core'
        kong = require 'kong'
        kong.init()
    }

    init_worker_by_lua_block {
        kong.init_worker()
    }

    proxy_next_upstream_tries 999;

    upstream kong_upstream {
        server 172.16.23.27:3009;
        balancer_by_lua_block {
            kong.balancer()
        }
        keepalive 60;
    }

    map $http_upgrade $upstream_connection {
        default keep-alive;
        websocket upgrade;
    }

    map $http_upgrade $upstream_upgrade {
        default '';
        websocket websocket;
    }

    server {
        server_name kong;
        listen 0.0.0.0:8000;
        error_page 404 408 411 412 413 414 417 /kong_error_handler;
        error_page 500 502 503 504 /kong_error_handler;

        access_log logs/access.log;

        listen 0.0.0.0:8443 ssl;
        ssl_certificate /usr/local/kong/ssl/kong-default.crt;
        ssl_certificate_key /usr/local/kong/ssl/kong-default.key;
        ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
        ssl_protocols TLSv1.1 TLSv1.2;
        ssl_certificate_by_lua_block {
            kong.ssl_certificate()
        }

        location / {
            set $upstream_host nil;
            set $upstream_scheme nil;

            access_by_lua_block {
                kong.access()
            }

            proxy_http_version 1.1;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header X-Forwarded-Proto $scheme;
            proxy_set_header Host $upstream_host;
            proxy_set_header Upgrade $upstream_upgrade;
            proxy_set_header Connection $upstream_connection;

            proxy_pass_header Server;
            proxy_pass $upstream_scheme://kong_upstream;

            header_filter_by_lua_block {
                kong.header_filter()
            }

            body_filter_by_lua_block {
                kong.body_filter()
            }

            log_by_lua_block {
                kong.log()
            }
        }

        location = /kong_error_handler {
            internal;
            content_by_lua_block {
                require('kong.core.error_handlers')(ngx)
            }
        }
    }

    server {
        server_name kong_admin;
        listen 0.0.0.0:8001;

        access_log logs/admin_access.log;

        client_max_body_size 10m;
        client_body_buffer_size 10m;

        listen 0.0.0.0:8444 ssl;
        ssl_certificate /usr/local/kong/ssl/admin-kong-default.crt;
        ssl_certificate_key /usr/local/kong/ssl/admin-kong-default.key;
        ssl_protocols TLSv1.1 TLSv1.2;

        location / {
            default_type application/json;
            content_by_lua_block {
                ngx.header['Access-Control-Allow-Origin'] = '*'
                ngx.header['Access-Control-Allow-Credentials'] = 'false'
                if ngx.req.get_method() == 'OPTIONS' then
                    ngx.header['Access-Control-Allow-Methods'] = 'GET,HEAD,PUT,PATCH,POST,DELETE'
                    ngx.header['Access-Control-Allow-Headers'] = 'Content-Type'
                    ngx.exit(204)
                end

                require('lapis').serve('kong.api')
            }
        }

        location /nginx_status {
            internal;
            access_log off;
            stub_status;
        }

        location /robots.txt {
            return 200 'User-agent: *\nDisallow: /';
        }
    }

}
)

Operating System (Centos 7)

@ravi45722 do you mean websockets? Please clarify your meaning and what specifically you are trying to accomplish.

Thanks for the reply. I mean web sockets only. I want to establish web sockets via kong along with load balancing. Guide me you to do this. I mentioned my configuration above. Using this configuration I cant able to send live data to the front end app

Sorry,  closed by mistake

Hi,
See NGINX's guide on WebSocket proxying using NGINX as a reverse proxy: http://nginx.org/en/docs/http/websocket.html
This is natively supported by Kong (which includes the NGINX settings mentioned in this article).
Closing this, as I believe this should answer your question. Please do open another issue if you encounter a bug, but please do use our other community support channels like Gitter or our mailing list (see README.md) for troubleshooting guidance, as we wish to reserve our GitHub issues for bug reports only. Thank you!

Hi @ravi45722 , I'm looking to achieve the same objective.
Not sure if have achieve this. If you do, can you also share how we can do this?


text:
Runscope plugin for Live Traffic Alerts

While most people think of Runscope for functional API testing and monitoring, there's another product feature called Live Traffic Alerts. It monitors live product traffic for matches based on any parts of the HTTP request or response, including header values, JSON or XML data, connection details and more.
A Runscope plugin for Kong would utilize the Runscope API to post API request/response data from Kong into a Runscope bucket, which in turn gets analyzed by Live Traffic Alerts. The API resource is Messages, and the documentation is here. The only configuration settings required are a bearer token (an application personal access token can be obtained from the Applications settings) and a bucket key (unique bucket identifier) which is a path-based parameter in the method.
I'd love to collaborate on this plugin.

:+1:

@mansilladev would be happy to help out on this too

@mansilladev here few good resources for a PR:

http://tylerneylon.com/a/learn-lua/
https://getkong.org/docs/0.5.x/plugin-development/
http://streamdata.io/blog/developing-an-helloworld-kong-plugin/ (not fully up to date)
https://getkong.org/plugins/galileo/ (implementation looks similar to Galileo)

Digging into the log-serializers -- how is the response body (content) accessed?

Aggregated in the body_filter_by_lua phase: https://github.com/Mashape/kong/blob/master/kong/plugins/mashape-analytics/handler.lua#L74

@thibaultCha Woot. Thanks.
I've built a plugin that was based off of http-log. Works great. However, I did just notice that mashape-analytics has a batching mechanism. I'm going to implement that, and then hopefully, have something for folks to try out.

I recommend that you use lua-resty-logger-socket for the batching mechanism.

BTW, I am concerned that multiple logging plugins perform the response body aggregation logic. Because this operation consumes memory and resources for each request, and if someone has, say, the mashape-amalytics plugin enabled along another plugin doing response body aggregation, one of the two is doing work already done by another, eating up resources from the Nginx worker.
The only solution I can see to that is for "official" plugins to aggregate in a namespaced ngx.ctx variable, only if that variable was not initialized previously. Hence, only one plugin would aggregate the value in body_filter_by_lua, but all of them can access the response's content in log_filter_by_lua.

Well, if we can settle on not just the namespace, but also common content/operations that would be universally useful (right now it's req_body, res_body and req_post_args that are in ngx.ctx.analytics) then I'd be totally down with adhering to that pattern/standard to access those variables for the Runscope plugin.

BTW: https://github.com/mansilladev/kong/ -- initial commit. After enabling the plugin runscope-log in the kong.yaml, add the plugin via the admin API:
Request body:
{ 	"name": "runscope-log",, 	"config.access_token": "{{yourRunscopePersonalAccessToken}}",         "config.bucket_key": "{{yourRunscopeBucketKey}}", 	"config.log_body": true }
Make some calls through Kong and the traffic should flow into your bucket.

Awesome! Do you plan on making a PR? I just see a few tweaks that we can discuss in it, otherwise it looks good.
I think we can merge this without taking into account the unique request/response bodies we discussed, and create an issue to enhance that in the near future.

https://getkong.org/plugins/runscope/

authors: ahmadnassri harlow mansilladev sinzone thibaultCha


text:
Tighten what API's are available on a Constraint via Protocols

This is the first step to providing more robust update functionality. Right now one has to learn by a bit of trial and error what API's can be used during the chaining process.
For instance right now one can actually do something like:
make.top.equalTo(50).right.equalTo(60) which while seems like it should work wont work at all and only has subtle errors. Rather I'd like to via protocols completely prohibit one from even using methods that are should not be available for their current chaining step.

Open for suggestions on PR #75

This has been completed and merged into develop.

repo: Masonry/Snap


text:
The Azure Service Path is ignored in the queues addresses

Is this a bug report?
Yes

Can you also reproduce the problem with the latest version?
Yes with the latest 5.x.x version(5.5.6), haven't migrated to 6.x.x yet.
Steps to Reproduce

Create a MassTransit project that uses Azure ServiceBus for transport
Configure it to use a service path
Put a breakpoint in a consumer method and look at the context.ReceiveContext.InputAddress URI.
(it's also possible to use service bus explorer and look at sourceAddress value in the messages themselves)

Expected Behavior

All the queues addresses (input address, etc...) should take the service path into account and have the following format :
sb://<namespace>/<servicepath>/<queuename>

Actual Behavior

Since version 5.5.3 the service path is ignored and the addresses have the following format :
sb://<namespace>/<queuename>

Extra  Info
It's probably linked to this changeset, before it was using Uri() while now it uses GetInputAddress which use UriBuilder instead; however Uri and UriBuilder don't have the same behavior: Uri keep the paths already present in the root URI while UriBuilder removes them.
For example the following code in LinqPad :
var hostAddress = new Uri("sb://somenamespace.servicebus.windows.net/SomeServicePath/");
var path = "queuename";

//Old version
var oldVersion = new Uri(hostAddress, path);
Console.WriteLine(oldVersion.ToString());
//OUTPUT : sb://somenamespace.servicebus.windows.net/SomeServicePath/queuename

//New Version
var newVersion = new UriBuilder(hostAddress) {Path = path};
Console.WriteLine(newVersion.ToString());
//OUTPUT : sb://somenamespace.servicebus.windows.net/queuename

I realize you haven't migrated to 6.0.1 yet, but have you tested to see if it works properly in that version?

Not yet but I will do a quick test app to see if it work with version 6.

Ok I create a small test app that uses version 6 and it seems the service path is working fine on it; I didn't test everything but the input / source address are correct and the scheduling seems to work fine too.
But I did more tests and apparently the issue seems to be limited to the .NET Framework version of the MassTransit Azure service bus packages (MassTransit.AzureServiceBus). I tried using the "standard" version instead (MassTransit.Azure.ServiceBus.Core) and it is working even with version 5.5.6 .

Oh, yeah, that might be the case. At this point, that legacy transport isn't supported. You'd be encouraged to switch over to the .Core version, even for full framework (net461+).

Ok, we used the framework version because at the time the .Net standard version for Service Bus didn't exists... and we kept using it since.
I think we will rollback to 5.5.2 for the time being and migrate to 6.0.1 / core version in the next sprint.

Sounds like a plan, thanks for helping sort it out!

authors: gersenk phatboyg

repo: MassTransit/MassTransit


text:
Eventstore + Sagas?

Hi guys,
This is a sort of discussion pull request, because I really need some discussion with you guys before I continue down this path.
First of all, read the commit message and look at EventStoreIntegration.Tests/Saga_Tests.cs. Then, have a look at the spec and the rest of it. It's quite messy right now, but at least it should compile and work out of the box, and the tests shouldn't hang.
Questions:

The filters of ISagaRepository<TSaga> - are they used inside of the state machine?
These filters - are they related to the life cycle of the saga? I don't have a clear conceptual picture in my mind of how the sagas in MT work - is it possible to have S1 { CorrId = 1, Tag = A }, S2 { CorrId = 1, Tag = B }? Is this when where the filtering conditions come into play?
As of now, there's no deletion - don't we need that? I'm uncertain on how MT loads the list of sagas - by correlation id I presume - but what about the above question? A stream has its streamid uniquely identified by this id, essentially making it a key-value store and allowing it to map event sourcing to these types of underlying data stores.
In order to integrate and make the second test pass, I need a way to hook into the saga state machine. The idea is that the state deltas (the events of the event store) in this pull request make up the saga state, rather than having it as snapshots, allowing e.g. saga merging after-the-fact if we for example write to a DHT, like Rhino ESB does when it want high-availability writes (with potential conflicts) - the difference here would be that we could merge with events as well.
How do we handle mutual exclusion in a distributed system of multiple saga buses with same saga types running?

Summary: some progress, but what about filtering? Next stop is to get a handle into the sagas as well.
Observations:

log4net's versions is a problem. How event-store has solved it is really nice - I suggest a similar log factory and then log4net would be an integration point rather than direct dep.
We'd need to refactor the saga tests to avoid Thread.Sleep statements - even if we're doing "integration". E.g. by using an in-memory sql database like Rhino.Security does - this would support the optimistic concurrency concepts we need.

Ping @phatboyg @drusellers @joliver - you might be interested in this.

I have a question: now that @phatboyg pushed to develop; would you prefer me merging those commits into this branch from now onwards? This would mean that I don't break my own history, since I've pushed already. Alternatively I delete this branch and push a new one that I rebased, but that seems a bit dirty.
Any comments from anybody btw?

Can't you just rebase your commits on top of it? And I'm thinking the event store pieces will need to be in a separate project like we did the stomp transport.

Chris Patterson
On Jan 23, 2012, at 10:39 AM, Henrik Feldtreply@reply.github.com wrote:

I have a question: now that @phatboyg pushed to develop; would you prefer me merging those commits into this branch from now onwards? This would mean that I don't break my own history, since I've pushed already. Alternatively I delete this branch and push a new one that I rebased, but that seems a bit dirty.
Any comments from anybody btw?

Reply to this email directly or view it on GitHub:
https://github.com/MassTransit/MassTransit/pull/53#issuecomment-3616939

I could, yes. It would mess up my history though. The github model uses continuous merging - when discussing larger commits like this one, and I would argue that would be preferable - or anyone who has my tree is ****ed when they try to update it. It's your choice.

As I said, another reason this should be a separate project and repo on GitHub.
--
Chris Patterson
On Jan 23, 2012, at 10:53 AM, Henrik Feldt
reply@reply.github.com
wrote:

I could, yes. It would mess up my history though. The github model uses continuous merging - when discussing larger commits like this one, and I would argue that would be preferable - or anyone who has my tree is ****ed when they try to update it. It's your choice.

Reply to this email directly or view it on GitHub:
https://github.com/MassTransit/MassTransit/pull/53#issuecomment-3617218

Alright.
Have you had time to look at it?
I'm considering trying a NHibernate.Dialects.AzureTable one as well - would probably be easier to pull off smoothly with the current saga model.

For things in development, Chris and I rebase on top of develop. I also agree that this would follow a separate project like stomp.
-d
On Jan 23, 2012, at 10:57 AM, Henrik Feldtreply@reply.github.com wrote:

Alright.
Have you had time to look at it?
I'm considering trying a NHibernate.Dialects.AzureTable one as well - would probably be easier to pull off smoothly with the current saga model.

Reply to this email directly or view it on GitHub:
https://github.com/MassTransit/MassTransit/pull/53#issuecomment-3617303

Yup, that is fine, I agee.

Let's switch the discussion from where it should be - if you would have a look at the actual idea I would value that more.

This would be tangential to when the new state machines moves into MT (hence incrementing its number to 3.0) - when do we think this happens?

So, continuing my monologue: I'm going to target the Automatonymous project in the future after MT 2.1 is released.

Sweet
-d
On Feb 17, 2012, at 4:29 AM, Henrik Feldtreply@reply.github.com wrote:

So, continuing my monologue: I'm going to target the Automatonymous project in the future after MT 2.1 is released.

Reply to this email directly or view it on GitHub:
https://github.com/MassTransit/MassTransit/pull/53#issuecomment-4018111

authors: drusellers haf phatboyg


text:
Gt

https://github.com/catapult-project/catapult/blob/master/bin/run_dev_server

Low effort post

repo: MasterKale/SimpleWebAuthn


text:
Export WebAuthnError

Hi 👋
First, thanks a lot for this library, it's a life-saviour when using WebAuthn.
I have a small question, are you against exporting WebAuthnError? This way, we could be able to perform instanceof checks instead of duck typing:
// usage example with ts-pattern:
startAuthentication({ … }).catch(error => {
  if (error instanceof WebAuthnError) {
    match(error.code) // typesafe here
      .with("ERROR_AUTHENTICATOR_GENERAL_ERROR", () => { … })
      .with("ERROR_AUTHENTICATOR_MISSING_DISCOVERABLE_CREDENTIAL_SUPPORT", () => { … })
      .with("ERROR_AUTHENTICATOR_MISSING_USER_VERIFICATION_SUPPORT", () => { … })
      .with("ERROR_AUTHENTICATOR_NO_SUPPORTED_PUBKEYCREDPARAMS_ALG", () => { … })
      .with("ERROR_AUTHENTICATOR_PREVIOUSLY_REGISTERED", () => { … })
      .with("ERROR_CEREMONY_ABORTED", () => { … })
      .with("ERROR_INVALID_DOMAIN", () => { … })
      .with("ERROR_INVALID_RP_ID", () => { … })
      .with("ERROR_INVALID_USER_ID_LENGTH", () => { … })
      .with("ERROR_MALFORMED_PUBKEYCREDPARAMS", () => { … })
      .with("ERROR_PASSTHROUGH_SEE_CAUSE_PROPERTY", () => { … })
      .exhaustive();
  }
});

If you are against it, feel free to close this PR.

I have no issue with this at all, thanks for the contribution @zoontek! I'll get this merged and published Soon™ ✌

Hello @zoontek, thanks for your patience. You should now be able to import WebAuthnError from @simplewebauthn/browser@8.3.7! 🚀

authors: MasterKale zoontek