Install-Manual for Windows-Server-Environment

Hallo,
is there anywhere a install-manual or instructions how the flexlm_exporter should be installed or used in a Windows-SErver-Environment?
Prometheus is running on the license server, grafana is also running. but i am not able to get the license-Informations to Prometheus :(
Maybe someone can help me.
Thanks a lot.
'BR
Roland

Hello, I think I have made a step forward.
The FlexLM_exporter is now running and transmitting data to Prometheus.
Unfortunately, no meaningful data arrives yet. The following messages are generated:
level=debug ts=2023-10-16T12:43:30.641Z caller=flexlm_exporter.go:88 msg="collect query:" filters="unsupported value type"
level=error ts=2023-10-16T12:43:30.705Z caller=collector.go:173 lmstat="collector failed after:" 0.0010003=:
level=debug ts=2023-10-16T12:43:30.705Z caller=collector.go:177 OK:=lmstat_feature_exp collectorsucceededafter:=0.0010003

Especially the "lmstat="collector failed after" still worries me.
In Prometheus this arrives:
# HELP flexlm_exporter_build_info A metric with a constant '1' value, identified by version, revision, branch and goversion, from which flexlm_exporter was built.
# TYPE flexlm_exporter_build_info gauge
flexlm_exporter_build_info{branch="",goversion="go1.19",revision="",version=""} 1
# HELP flexlm_scrape_collector_duration_seconds flexlm_exporter: Duration of a collector scrape.
# TYPE flexlm_scrape_collector_duration_seconds gauge
flexlm_scrape_collector_duration_seconds{collector="lmstat"} 0.0009984
flexlm_scrape_collector_duration_seconds{collector="lmstat_feature_exp"} 0
# HELP flexlm_scrape_collector_success flexlm_exporter: Whether a collector was successful.
# TYPE flexlm_scrape_collector_success gauge
flexlm_scrape_collector_success{collector="lmstat"} 0
flexlm_scrape_collector_success{collector="lmstat_feature_exp"} 1
# HELP flexlm_scrape_error flexlm_exporter: Whether an error occurred while scrapping a licence.
# TYPE flexlm_scrape_error gauge
flexlm_scrape_error{collector="lmstat_feature_exp",name="SolidWorks"} 1
# HELP promhttp_metric_handler_errors_total Total number of internal errors encountered by the promhttp-metric handler.
# TYPE promhttp_metric_handler_errors_total Counter
promhttp_metric_handler_errors_total{cause="encoding"} 0
promhttp_metric_handler_errors_total{cause="gathering"} 0

The Licenses.yml looks like this:
# FlexLM licenses to be monitored.
---
Licenses:
  - Name: SolidWorks
    license_server: 123456@server001
    include_features: solidworks
    monitor_users: True
    monitor_reservations: True
    monitor_versions: False

The Prometheus.yml thus:
# my global configuration
global:
  scrape_interval: 60s # Sets the scrape interval to every 15 seconds. Default is every 1 minute.
  evaluation_interval: 15s # Rules are evaluated every 15 seconds. Default is every 1 minute.
  # scrape_timeout is set to the global default value (10s).

# alert manager configuration
alerting:
  alertmanagers:
    - static_configs:
        - Targets:
          # - alertmanager:9093

# Load rules once and evaluate periodically according to the global 'evaluation_interval'.
rule_files:
  # - "first_rules.yml"
  # - "second_rules.yml"

# A scrape configuration that contains exactly one endpoint to be scrapped:
# Here it is Prometheus itself.
scrape_configs:
  # The job name is added as a label `job=<job_name>` to each time series queried by this configuration.
  - job_name: "prometheus"

    # metrics_path defaults to '/metrics'.
    # schema defaults to 'http'.

    static_configs:
      - targets: ["localhost:9090"]
      - targets: ["localhost:9319"]

I start the FlexLM exporter via a batch file:
flexlm_exporter.exe --path.lmutil="C:\Program Files (x86)\SOLIDWORKS SolidNetWork License Manager\utils" --collector.lmstat --web.listen-address=":9319" --path.config="D:\Source\FlexLM_Exporter\licenses.yml" --log.level=debug --web.disable-exporter-metrics
What could be the reason that the licenses are not read?
Regards

Hello, i could solve my problem. I think the reason was to start the FlexLM_Exporter.exe with the correct flags.
This works for me:
flexlm_exporter.exe --log.level=debug --path.lmutil="D:\Source\FlexLM_Exporter\lmutil.exe"  --path.config="D:\Source\FlexLM_Exporter\licenses.yml" --web.disable-exporter-metrics
BR
Roland

@plustig73 happy to hear that you've go it solved!
Would you like to send me a PR documenting about the Windows usage?
Maybe something about running the exporter as a service in windows would be valuable.

Hello Mario @mjtrangoni , sorry for me late response, too much work and not enough time...

With this arguments:
--log.level=debug --path.lmutil="D:\FlexLM_Exporter\lmutil.exe" --path.config="D:\FlexLM_Exporter\licenses_swx.yml" --web.disable-exporter-metrics
I used nssm also for Prometheus-DB-Service, its running on a dedicated server stable since about a month now.
Best regards.
Roland


Shift Codebase to NEXTJS: Expereince Page

Work with the nextjs branch. Do not disturb the master branch, please.
Footer and Navbar should be called dynamically (for now don't do anything about it. It is a part of another issue)

sir, I want to work on this

@smaranjitghose I would Like to work on this.

@smaranjitghose I would Like to work on this.

Use the nextjs branch (it's a basic template as of now)
Split this into 3 PRs

Header, Footer
Navbar
Experience Page

@smaranjitghose Should we use module.scss instead of moduel.css?

@smaranjitghose Should we use module.scss instead of module.css?

Sure, but make sure you use it for all the components.

@sanjay270899 one more thing, try to make sure that even for the nextjs app we can load the data for the cards easily from a JSON like we are doing it now from the experience.js
In your PR description just let me know whether you are using Bootstrap or not


Feature Request

I’d like to make a request for a feature to auto complete rocket battles when passing by a go rocket stop. This would make for way easier auto farming/stardust farming and allow users to use that stardust to power up their costly Pokemon. I hope you choose to integrate it into your project if possible. Thanks if you read through.

Is this thing actually working?

Is this thing actually working?

No it's not, this project hasn't been maintained for almost 5 years now.


Primary key on metadata table

Running flyway baseline with the table argument creates a primary key with the name schema_verison_pk rather than {{metadata table name}}_pk.

Thank you for the report.
What Flyway version are you using?
Which client are you using?
What database are you using?

version 3.2.1
command line
postgres

Looks like this wasn't an issue, just the table being renamed rather than creating it with baseline. Sorry for the inconvenience.


Rework Dexter command imports and get valid commands code to be

simpler and more static.

I've pulled these changes into my development branch for DexLabels and have been able to remove the duplicated code issue I was having, so this needs to go in first, providing everyones happy with it.

See my inline comment. Otherwise, this this looking good. Thanks for cleaning this up.


Updated migration guide for kafka connector

Added information regarding a removed feature from the previous kafka version.

This update was included in a separate PR.


Unable to pass python package metadata

I'm passing Python package data in package.json as follows:
"targets": {
      "python": {
        "author": "memycompany",
        "name": "da-cdk",
        "version": "0.2",
        "description": "hellojsii",
        "package": "package-hellojsii",
        "testItem": "testItemValue"
      }
    }

and getting UNKNOWN-0.1.4-py3-none-any.whl as a package name. Please advise how to properly build python package. Thanks

The supported settings for the python target are:

distName (the name of the listing on PyPI)
module (the name of the Python module

The author, version, and description are taken from the package.json standard fields for the same semantics.

awesome, you've just made my day @RomainMuller, thanks


Document contiguous idl

Let me know if you want a different structure for this.

LGTM... I'm so excited that this is supported now!


Geolocator.requestPermission() not working on web - TypeError

🐛 Bug Report

The following code (watchpos.dart) works as expected on Android and IOS, but not always on web:
import 'package:geolocator/geolocator.dart';
void watchPos(Function(double, double) showPos) async {
  bool isLocationEnabled = await Geolocator.isLocationServiceEnabled();
  if (isLocationEnabled) {
    LocationPermission geolocationPermission = await Geolocator.checkPermission();
    print('********geolocationPermisssion 1 $geolocationPermission');
    if (geolocationPermission != LocationPermission.deniedForever) {
      if (geolocationPermission == LocationPermission.denied)
        geolocationPermission = await Geolocator.requestPermission();
      print('********geolocationPermisssion 2 $geolocationPermission');
      if (geolocationPermission == LocationPermission.always ||
          geolocationPermission == LocationPermission.whileInUse) {
        print('********geolocationPermisssion 3 $geolocationPermission');
        Geolocator.getPositionStream(desiredAccuracy: LocationAccuracy.high, distanceFilter: 5)
            .listen((Position position) {
          print('********************position.accuracy ${position.accuracy}');
          if (position.accuracy < 25) showPos(position.latitude, position.longitude);
        });
      }
    }
  }
}

When running on web, Geolocator.requestPermission() does not work.
With Chrome on Android I get these messages:
---------------------- Running on web
15:26:31.761 main.dart.js:3043 ********geolocationPermisssion 1 LocationPermission.denied
15:26:31.765 main.dart.js:24820 Uncaught TypeError: o.request is not a function
    at main.dart.js:50703
    at a7L.a (main.dart.js:3500)
    at a7L.$2 (main.dart.js:23869)
    at Object.R (main.dart.js:3486)
    at Br.je (main.dart.js:50708)
    at main.dart.js:16850
    at a7L.a (main.dart.js:3500)
    at a7L.$2 (main.dart.js:23869)
    at a6L.$1 (main.dart.js:23861)
    at Kb.lM (main.dart.js:24864)

With Chrome on Windows, and flutter run -d chrome, I get these messages:
---------------------- Running on web
js_primitives.dart:30 ********geolocationPermisssion 1 LocationPermission.denied
html_dart2js.dart:25491 Uncaught (in promise) TypeError: this.request is not a function
    at Permissions.[dartx.request] (html_dart2js.dart:25491)
    at geolocator_web.GeolocatorPlugin.__.requestPermission (geolocator_web.dart:40)
    at requestPermission.next (<anonymous>)
    at runBody (async_patch.dart:84)
    at Object._async [as async] (async_patch.dart:123)
    at geolocator_web.GeolocatorPlugin.__.requestPermission (geolocator_web.dart:38)
    at Function.requestPermission (geolocator.dart:216)
    at watchPos (watchpos.dart:9)
    at watchPos.next (<anonymous>)
    at async_patch.dart:45
    at _RootZone.runUnary (zone.dart:1446)
    at _FutureListener.thenAwait.handleValue (future_impl.dart:150)
    at handleValueCallback (future_impl.dart:703)
    at Function._propagateToListeners (future_impl.dart:732)
    at _Future.new.[_completeWithValue] (future_impl.dart:536)
    at async._AsyncCallbackEntry.new.callback (future_impl.dart:574)
    at Object._microtaskLoop (schedule_microtask.dart:41)
    at _startMicrotaskLoop (schedule_microtask.dart:50)
    at async_patch.dart:166

Configuration
D:\AndroidStudioProjects\nds_konst>flutter --version
Flutter 1.25.0-8.2.pre • channel beta • https://github.com/flutter/flutter.git
Framework • revision b0a2299859 (7 weeks ago) • 2021-01-05 12:34:13 -0800
Engine • revision 92ae191c17
Tools • Dart 2.12.0 (build 2.12.0-133.2.beta)

geolocator: ^6.2.0

Thank you for reporting this issue, I have released a new version of the geolocator (7.0.1) which contains a fix for this bug.

I changed to 7.0.1in pubspec.yaml but then I get these messages on pub get:
Running "flutter pub get" in nds_konst...
Because every version of flutter from sdk depends on vector_math 2.1.0-nullsafety.5 and geolocator_platform_interface >=2.0.0 depends on vector_math ^2.1.0, flutter from sdk is incompatible with geolocator_platform_interface >=2.0.0.
And because geolocator >=7.0.0 depends on geolocator_platform_interface ^2.0.0, flutter from sdk is incompatible with geolocator >=7.0.0.
So, because ndskonst depends on both flutter any from sdk and geolocator ^7.0.1, version solving failed.
pub get failed (1; So, because ndskonst depends on both flutter any from sdk and geolocator ^7.0.1, version solving failed.)
Process finished with exit code 1

Is 7.01 not compatible with Flutter 1.25 or what?

Geolocator 7.0.1 is a null safe release which requires the flutter beta channel.

I am using the beta channel, se above.
Flutter 1.25.0-8.2.pre • channel beta

Maybe you should run a flutter upgrade command, I am on beta channel and my flutter doctor -v indicates I am on version Flutter 1.26.0-17.5.pre:
[✓] Flutter (Channel beta, 1.26.0-17.5.pre, on macOS 11.2.1 20D74 darwin-x64, locale en-GB)
    • Flutter version 1.26.0-17.5.pre at /Users/maurits/fvm/versions/beta
    • Framework revision 1fe38dcb5f (12 days ago), 2021-02-10 16:25:47 -0800
    • Engine revision d4453f6018
    • Dart version 2.12.0 (build 2.12.0-259.9.beta)

[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.2)
    • Android SDK at /Users/maurits/Library/Android/sdk
    • Platform android-30, build-tools 30.0.2
    • ANDROID_HOME = /Users/maurits/Library/Android/sdk
    • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6222593)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 12.4, Build version 12D4e
    • CocoaPods version 1.10.1

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 4.1)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6222593)

[✓] IntelliJ IDEA Ultimate Edition (version 2020.3.2)
    • IntelliJ at /Applications/IntelliJ IDEA.app
    • Flutter plugin version 53.1.5
    • Dart plugin version 203.6912

[✓] VS Code (version 1.53.2)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.19.0

[✓] Connected device (3 available)
    • Nexus 5X (mobile)                      • 01043361c1b19568          • android-arm64  • Android 8.1.0 (API 27)
    • Maurits van Beusekom’s iPhone (mobile) • 00008101-000D543E1A40001E • ios            • iOS 14.4
    • Chrome (web)                           • chrome                    • web-javascript • Google Chrome 88.0.4324.182

• No issues found!

I did flutter upgrade and now I get these messages:
Running "flutter pub get" in nds_konst...
    Because geolocator >=7.0.0 depends on geolocator_platform_interface ^2.0.0 which depends on plugin_platform_interface ^2.0.0, geolocator >=7.0.0 requires plugin_platform_interface ^2.0.0.

(1) So, because google_maps_flutter_platform_interface <2.0.0-nullsafety depends on plugin_platform_interface ^1.0.1, geolocator >=7.0.0 is incompatible with google_maps_flutter_platform_interface <2.0.0-nullsafety.

    Because google_maps_flutter_web >=0.1.0+8 <0.1.1 depends on google_maps_flutter_platform_interface ^1.0.5 and no versions of google_maps_flutter_web match >0.1.1 <0.2.0, google_maps_flutter_web >=0.1.0+8 <0.1.1-∞ or >0.1.1 <0.2.0 requires google_maps_flutter_platform_interface ^1.0.5.

    And because google_maps_flutter_web 0.1.1 depends on google_maps_flutter_platform_interface ^1.1.0, google_maps_flutter_web ^0.1.0+8 requires google_maps_flutter_platform_interface ^1.0.5.

    And because geolocator >=7.0.0 is incompatible with google_maps_flutter_platform_interface <2.0.0-nullsafety (1), geolocator >=7.0.0 is incompatible with google_maps_flutter_web ^0.1.0+8.

    So, because ndskonst depends on both google_maps_flutter_web ^0.1.0+8 and geolocator ^7.0.1, version solving failed.
pub get failed (1;     So, because ndskonst depends on both google_maps_flutter_web ^0.1.0+8 and geolocator ^7.0.1, version solving failed.)
Process finished with exit code 1

C:\Users\Bo>flutter --version
Flutter 1.26.0-17.6.pre • channel beta • https://github.com/flutter/flutter.git
Framework • revision a29104a69b (7 days ago) • 2021-02-16 09:26:56 -0800
Engine • revision 21fa8bb99e
Tools • Dart 2.12.0 (build 2.12.0-259.12.beta)

Well that is one step forward, unfortunately you are depending both on google_maps_flutter and geolocator which at the moment are not compatible with each other because google_maps_flutter hasn't been migrated to stable null safety support yet.
Stable null safe support for google_maps_flutter should be published soon as the platform interface package (google_maps_flutter_platform_interface see here) has already been migrated to stable.
Until then I am afraid you are kinda stuck.

Couldn't you fix the bug in geolocator 6.x also?

Thanks a lot! Now requestPermission works. Unfortunately, I found another bug, in getPositionStream. Issue https://github.com/Baseflow/flutter-geolocator/issues/674


installation issue from requirements.txt

After creating a conda environment, use pip install -r requirements.txt, but encountered many ERRORs: No matching distribution found for many libraries.
For instance,
ERROR: Could not find a version that satisfies the requirement libpng==1.6.37 (from -r requirements.txt (line 40)) (from versions: none)
Can you please update a new requirements.txt file to fix such issues? Thank you very much.

Hey, we have just updated the requirements.txt file. Please let us know if you run into other issue when setting up the environment.

I created a conda environment with python=3.8, then pip install -r requirements.txt using the latest updated one, but still got errors as below.

Thanks
Xin


Try distributions one-by-one if no vendor is specified

Instead of always using Temurin when no vendor has been specified, the
plugin now tries all distributions one by one in alphabetical order.
Resolves #11.

@britter @marcphilipp @felipefzdz WDYT about the current state?

LGTM


Move flux computation to dict to enable use with both pandas/parquet and hdf5/numpy dict

We originally had rail_bpz compute some flux columns in _preprocess_magnitudes  and simply add those to the original input_data dictionary.  This caused issues if the input data was a data frame read from parquet.  I now stick the fluxes and the one magnitude used by BPZ into a new dict passed back to process chunk.  This allows rail_bpz to work with both pandas numpy dict inputs, solving an issue brought up as desirable by a couple users in the pz-rail Slack channel.

oops, forgot to add a test to cover the new parquet file option.

I'm going to add a test where it runs the parquet version of the input file, should just be a pytest.parametrize with a different input.


Are there examples using egress?

It seems that most or all of the examples here (which are great!) are based mainly on ingress rules. Can you provide some examples showing how to use egress rules?  In particular such that pods can be limited to connecting to certain other pods or external IPs, but also continue to have access to any necessary k8s services, such as DNS.  Thanks!

There are actually 3 egress examples:
Deny traffic from a namespace: https://github.com/ahmetb/kubernetes-network-policy-recipes/blob/master/12-deny-all-non-whitelisted-traffic-from-the-namespace.md
Deny traffic from a namespace except DNS: https://github.com/ahmetb/kubernetes-network-policy-recipes/blob/master/14-deny-external-egress-traffic.md
Deny traffic  from an app: https://github.com/ahmetb/kubernetes-network-policy-recipes/blob/master/11-deny-egress-traffic-from-an-application.md

Thanks for the pointers!


Not working on macos 10.15 catalina beta

When I plug in the yubikey it simply says "Unknown error occured":

Looks like there is an incompatibility with the newest mac os 10.15?

I could make it working by going to system settings --> security and enabling "input monitoring" for the app. Maybe this permission should be requested by the app upon starting.


Automated test coverage for blueprint use case

Currently, the tool generates the blueprint descriptors from a template, similar to the spring descriptors. The generated spring descriptors are automatically verified in associated test cases. The generated blueprint descriptors have no test coverage yet.
This would require the use of Karaf in these test modules.
Relates to #18

out-of-date


Enhanced coloring

This PR builds on #4397 to enhance the existing syntax coloring.
Underline mutable variables
The textmate scope markup.underline underlines identifiers, which is a nice way to make mutable vars stand out:

Italicize static variables
The textmate scope markup.italic italicizes identifiers. Italic = static is a common convention in IDEs like IntelliJ:

Coincidentally I ran into a similar issue myself in #4399. Is there a reason we don't use field though? That seems more appropriate for Rust. It seems like there's like 10 different terms for the same thing in the protocol and every language server does something completely different.

@CryZe method and field aren't in the list of recommended semantic scopes published by VSCode. That doesn't mean we can't use them, but there needs to be some alignment between language-server-implementers and color-theme-creators. The community needs to align around some common set of scope names, and that list is the main thing we have to go on so far.

Why wouldn't attributes use meta.attribute.rust? Wouldn't this change remove the ability to color attributes different from keywords?

@aloucks Let's focus on #4397 for the moment, which is designed to be a non-controversial fix that prevents semantic coloring from "fighting" with textmate coloring. I agree with your point that if we do make any changes to scopes, we should make sure to use distinct scopes so it doesn't take away the ability to customize. You might think that rust-analyzer should just not concern itself with VSCode's default rust syntax coloring, but now that it's doing semantic coloring, it is arguably necessary to take "ownership" of the default theme to keep it in sync with semantic colors, or users will see weird changes when they open Rust files.

@georgewfraser could you rebase? Seems like GH is having trouble picking up the correct diff here

@matklad I rebased. I also removed coloring attributes for now. It's potentially controversial, I'll make a new PR where we can have a more extensive discussion about what we could do or not do there.

I definitively love the approach here of lowering semantic scopes to completely wrong text mate scopes to get basically a css class :D
I do think we should do this for .*mutable. I am unsure about static. In Rust, I feel that statics & const are already more the sufficiently called out by SCREAMING_SNAKE_CASE naming convention, so it feels like the case where highlighting just creates meaningless extra difference.

Think of TextMate as a giant mountain of cruft, upon which we are carefully perching an elegant foundation of semantic coloring 😄 The key idea is that we must not let the cruftiness of TextMate infect the semantic scopes---the semantic scopes should all be sensible, and then there's this layer of fallback scopes that translates down to the TextMate craziness.
I think your point is reasonable about statics. Plus, I think it makes sense to make additions slowly and see how people react.
If we're not "using" italic for statics, what do you think about underline vs italic for mutables? Italic is a lot more subtle, which is good or bad depending on your POV.

Definitely unreling italics is too subtle. I've been using myself (I run a cusom theme) and that's what is used in IntellijJ as well.
bors d+

bors r+

@georgewfraser do you want to merge this? :-)

bors r+

It might be worth doing the same distinction for const/let as it's done by default in the newest  VSCode April update: https://code.visualstudio.com/updates/v1_45#_new-color-for-constants-in-the-default-dark-theme

@Xanewok Right now we're using the const coloring for:

const
Enum members
We're using variable coloring for:
static
let / let mut
Parameters
Fields

Can the underlines be deactivated?

@anderejd It should be possible...wasn't able to figure it out in a few minutes but will take another look as soon as I can.

Ok thanks for looking into it. For now I edited the package.json for the vscode extension locally and that seems to work fine for now.

You should be able to override the theme locally.   But this particular PR is doing that, by specifying an explicit way of formatting vs. just the semantic markup, and letting the theme do the formatting.  I think the better change here would have been for the theme to apply the underlining for mutable vars.
e.g. using this in settings.json until the themes do the same:
"editor.semanticTokenColorCustomizations": {
        "enabled": true,
        "rules": {
            // All-themes colors
            "*.mutable": {
                "fontStyle": "underline"
            },
        },

Thanks @woody77 ! This works for me and deactivates underlines:
    "editor.semanticTokenColorCustomizations": {
        "enabled": true,
        "rules": {
            "*.mutable": {
                "fontStyle": ""
            },
        }
    }

@woody77 I was trying to follow the guidance from VSCode, where they say if you introduce a semantic token, you should provide a fallback textmate scope:
https://code.visualstudio.com/api/language-extensions/semantic-highlight-guide#semantic-token-scope-map

I agree it should be a fallback scope, but one that doesn't imply formatting, and instead is a more structural (maybe keyword.control.rust?)


Make it easier to report issues

Add a --version option
When run with --debug, first print out the operating system and python versions
Update the README, or add an issue template, with instructions to rerun with --debug and paste that into the issue
Current error messages are worthless (e.g. SelectFrom' object has no attribute 'Columns'). Catch these errors and provide a better message to the user on what (likely) occurred and how to report an issue

Addressed in #27, except for better error messages

Resolved with #28


simplefs: allow a specified revision for reading KBFS TLFs

This depends on #12957 and keybase/kbfs#1702 -- those should be reviewed and merged first.
This affects stat, ls, read, and the source paths of copy.
Issue: KBFS-3206

Jenkins failures are unrelated and happening in master too. I had a clean run before rebasing, so merging.


Can I link my vscode plugin on the homepage?

Description
I wrote a vscode plugin, which should bring a better development experience to nuxt-ui2 users.
I hope more users can experience a great development experience. What do you think? If you think it can help you, I can modify it appropriately and have a better English description. Link

Very cool extension! However, I don't feel confortable recommending this to users as all of this should work with TypeScript by default, we've been making progress recently to have autocomplete in props. We still have some work to do to have links to the documentation in the component preview.

This json is generated based on the props provided in the document. If the api changes, the json needs to be regenerated. Synchronization cannot be achieved, but it is equally comfortable to use with the stable version of the UI component library, but it can be used according to nuxt-ui The break change on each version of the API is synchronized once

Nice one @Simon-He95. It looks similar to web-types which is a open-standard maintained by Jetbrains. Most of the top component libraries like vuetify, quasar, ionic, primevue, element-plus etc all ship webtypes with their build.
I was meaning to submit a PR to generate web-types.json for nuxt-ui.
Webtypes are primarily used in Jetbrains suite of editors & non-typescript editors like Vue Designer.
If yours is very different, my apologies in my misunderstanding.

Nice one @Simon-He95. It looks similar to web-types which is a open-standard maintained by Jetbrains. Most of the top component libraries like vuetify, quasar, ionic, primevue, element-plus etc all ship webtypes with their build.
I was meaning to submit a PR to generate web-types.json for nuxt-ui.
Webtypes are primarily used in Jetbrains suite of editors & non-typescript editors like Vue Designer.
If yours is very different, my apologies in my misunderstanding. Else, it might be worth sharing efforts with the web-types repo. Thanks again for your idea & efforts.

It would be best if there is webtypes itself. I can convert it into the json I need based on webtypes and provide plug-in types. Because there is currently no such thing, I use it on the https://ui.nuxt.com/elements/accordion website. Data constructed by obtaining props content through dom

Hi @benjamincanac, I have made some plugin capabilities enhancements. Are you willing to share this plug-in? It can help developers using nuxt-ui have a good development experience.
First, it can provide the fields, descriptions, and types of properties and events on the component.
Secondly, he can provide which slots are available under the component
Secondly, it can provide a quick jump to the official website document, which can be viewed in vscode or in an external browser.
In addition, it can hover over the tag of the component to provide a table with details showing the information of the fields in the middle. It can also support a certain attribute name and provide its description.


Unpin pydantic

Once yanked pydantic version 1.10.3, we can unpin it.
See reply by pydantic team https://github.com/pydantic/pydantic/issues/4885#issuecomment-1367819807
v1.10.3 has been yanked.

in response to spacy request: https://github.com/pydantic/pydantic/issues/4885#issuecomment-1367810049
On behalf of spacy-related packages: would it be possible for you to temporarily yank v1.10.3?

To address this and be compatible with v1.10.4, we'd have to release new versions of a whole series of packages and nearly everyone (including me) is currently on vacation. Even if v1.10.4 is released with a fix, pip would still back off to v1.10.3 for spacy, etc. because of its current pins for typing_extensions. If it could instead back off to v1.10.2, we'd have a bit more breathing room to make the updates on our end.

The docs for this PR live here. All of your documentation changes will be reflected on that endpoint.


[Bug] App Opens and Immediately Closes

🐛 Bug
After installing, I attempt to run the Carpe app and it flashes the program and then closes. I've tried both the newest ver of Carpe and Canary with the same result. I've disabled all security software and attempted to open the apps in a safe mode environment but had the same issue.
Edition	Windows 10 Pro
Version	22H2
Installed on	3/17/2023
OS build	19045.4046
Experience	Windows Feature Experience Pack 1000.19053.1000.0
Processor	13th Gen Intel(R) Core(TM) i7-13700K   3.40 GHz
Installed RAM	128 GB (128 GB usable)
System type	64-bit operating system, x64-based processor
EDIT: After installing the Carpe wallet on another machine, I believe the issue could be related to the fact that I have Edge completely disabled on the machine that was failing to load to wallet.

@krackajackfoo , could you please confirm if the problem persist?


Altered import/export structure to allow use in Webpack and NodeJS

Converted syntax to ES6, to allow use of ES6 modules
Utilised Webpack to transpile and minify
Changed Top-most exports to export only One object, to allow Webpack and Node project to import
Removed dependence on JWS and JWE objects being in the Global Scope, to allow consuming project to encapsulate jss-jose however they like

Looks good to me, besides the examples which might need to be updated.

All updated!
Thanks for your review @alokmenghrajani
means a lot to have my work appreciated.

Given that we are bumping the version number to 1.0.0, I'll fix some minor things (which needed backwards incompatible changes) and then cut a release.


Links inside admonitions not showing up in Graph View or Backlinks

Check for existing bug reports before submitting.

[X] I searched for existing Bug Reports and found no similar reports.

Expected Behavior
Links inside an admonition should work like any link - the connection shows up in the graph view and in backlinks.
Current behaviour
The links inside of admonitions do not show up in graph views or backlinks, as if these connections do not exist.
Reproduction
title: Example admonition
- Lorem ipsum [[Link A]]
- Lorem ipsum [[Link B]]

The links to [[Link A]] or [[Link B]] work, (as in I can click it and it will take me to the page), but it doesn't show up in Graph View or as a Backlink.
Which Operating Systems are you using?

[ ] Android
[ ] iPhone/iPad
[ ] Linux
[X] macOS
[ ] Windows

Obsidian Version Check
1.4.13
Plugin Version
10.3.2
Confirmation

[X] I have disabled all other plugins and the issue still persists.

Possible solution
No response

Another issue is that if I change the file name or change the location, the links placed in the admonition will not be updated.
For example:
title: Link to another note

![[note-1]]

if rename the note-1 to note-2, the name in the ad-code is still note-1, which would lost the connection with the note-2

This is a known issue with code blocks. Use callouts if you need link metadata interactions.


Fix unraised DbtDatabaseError

resolves #433
Description
Modified the DbtDatabaseError from dbt to dbt_common
Checklist

[x] I have signed the CLA
[x] I have run this code in development and it appears to resolve the stated issue
[ ] This PR includes tests, or tests are not required/relevant for this PR
[x] I have updated the CHANGELOG.md and added information about my change to the "dbt-glue next" section.

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.
FYI : I am not sure wether this change needs testing, if it does, I would be interested in understanding how to!
Tests that were run locally
Same as in the #433 issue but then got the following output :
09:19:04  Running with dbt=1.8.4
09:19:05  Registered adapter: glue=1.8.1
09:19:05  Found 41 models, 2 snapshots, 1 seed, 2 operations, 1 test, 1 source, 1367 macros
09:19:05
09:19:07
09:19:07
09:19:07  1 of 1 START sql incremental model xxx.test_database_error ............ [RUN]
09:19:17  Glue adapter: Glue returned `error` for statement None for code

spark.sql("""

select "a" as id
""").write.format("delta").mode("overwrite").save("s3://xxx/xxx/test_database_error")
SqlWrapper2.execute("""select 1""")
, AnalysisException: Failed to merge fields 'id' and 'id'. Failed to merge incompatible data types IntegerType and StringType
09:19:17  1 of 1 ERROR creating sql incremental model xxx.test_database_error ... [ERROR in 10.82s]
09:19:35
09:19:35
09:19:35  Finished running 1 incremental model, 2 project hooks in 0 hours 0 minutes and 29.55 seconds (29.55s).
09:19:35
09:19:35  Completed with 1 error and 0 warnings:
09:19:35
09:19:35    Database Error in model test_database_error (src/models/test_database_error.sql)
  GlueDeltaWriteTableFailed
09:19:35
09:19:35  Done. PASS=0 WARN=0 ERROR=1 SKIP=0 TOTAL=1

The error is well raised

Thanks for your contribution!


Create Workflow Diagramms

Create Diagramms based on #11 , #14 and #12 for the most important functionalities based on user roles and the design implementation

blocked by #11 #14 #12

can be started based on #11 #21  but needs later review to be compatible with #14


Collapse IMediator into one interface

No caching of results - yet. I'd build a cache for an action, not a type though.

@khellang i didn't get rid of the other interfaces :)


Fallback for user object in vote event

Noticed some undefined user objects, but the ID should still be provided, so a fallback to allow most miniplug methods would be very useful.
The front end on plug.dj seems to not emit this event to the API (but still takes the vote into account internally). I didn't add that but it might be something worth considering?

also didnt realized I added the same commit and pr descriptions :upside_down_face:

Neat, thanks. Is this a workaround for the same bug as in #24?

Seems to be, but I didn't look into it too much. Couldn't find a logged userJoin for the same user outputting undefined user objects.


Compatibility with tokio-based warp library

First of all: thank you for this nice library with a well though-out interface. I would really like to use it within a project using the tokio-based warp library (https://docs.rs/warp/). The problem I run into is that this library only supports running on a stream of incoming connections (https://docs.rs/warp/latest/warp/struct.Server.html#method.run_incoming) with trait bounds for tokio::io::{AsyncRead,AsyncWrite}. I can't use a custom acceptor like in the high_level_tokio example to run the compat() method, so I'm stuck for now.
Example of the code I have so far:
use tokio::{ fs, sync, net::TcpListener };
use tokio_stream::wrappers::TcpListenerStream;
use tokio_util::compat::TokioAsyncReadCompatExt;
use futures_util::stream::{ StreamExt, TryStreamExt };
use rustls_acme::{ AcmeConfig, caches::DirCache };

tokio::spawn(async move {
    let tcp_listener = TcpListener::bind(sa).await.unwrap();
    let tcp_incoming = TryStreamExt::map_ok(TcpListenerStream::new(tcp_listener), |tcp_stream| { tcp_stream.compat() });
    let mut tls_incoming = AcmeConfig::new(["example.com"])
<EMAIL_ADDRESS>        .cache(DirCache::new("./tmp"))
        .incoming(tcp_incoming);
    let index = warp::path::end().map(|| warp::reply::html(INDEX_FILE));
    warp::serve(index).run_incoming(tls_incoming).await;
});

This fails to compile with:
the trait bound `rustls_acme::futures_rustls::server::TlsStream<Compat<tokio::net::TcpStream>>: tokio::io::AsyncRead` is not satisfied

If I change the last line to:
warp::serve(index).run_incoming(tls_incoming.compat()).await;

I get:
error[E0599]: the method `compat` exists for struct `rustls_acme::Incoming<Compat<tokio::net::TcpStream>, std::io::Error, futures_util::stream::MapOk<TcpListenerStream, [closure@src/control.rs:212:91: 212:127]>, std::io::Error, std::io::Error>`, but its trait bounds were not satisfied
   --> src/control.rs:226:81
    |
226 |               warp::serve(index.or(icon).or(websocket)).run_incoming(tls_incoming.compat()).await;
    |                                                                                ^^^^^^ method cannot be called on `rustls_acme::Incoming<Compat<tokio::net::TcpStream>, std::io::Error, futures_util::stream::MapOk<TcpListenerStream, [closure@src/control.rs:212:91: 212:127]>, std::io::Error, std::io::Error>` due to unsatisfied trait bounds
    |
   ::: /home/sargeth/.cargo/registry/src/github.com-1ecc6299db9ec823/rustls-acme-0.5.1/src/incoming.rs:13:1
    |
13  | / pub struct Incoming<
14  | |     TCP: AsyncRead + AsyncWrite + Unpin,
15  | |     ETCP,
16  | |     ITCP: Stream<Item = Result<TCP, ETCP>> + Unpin,
...   |
25  | |     tls_accepting: FuturesUnordered<Accept<TCP>>,
26  | | }
    | | -
    | | |
    | |_doesn't satisfy `_: TokioAsyncReadCompatExt`
    |   doesn't satisfy `_: tokio::io::AsyncRead`
    |
    = note: the following trait bounds were not satisfied:
            `rustls_acme::Incoming<Compat<tokio::net::TcpStream>, std::io::Error, futures_util::stream::MapOk<TcpListenerStream, [closure@src/control.rs:212:91: 212:127]>, std::io::Error, std::io::Error>: tokio::io::AsyncRead`
            which is required by `rustls_acme::Incoming<Compat<tokio::net::TcpStream>, std::io::Error, futures_util::stream::MapOk<TcpListenerStream, [closure@src/control.rs:212:91: 212:127]>, std::io::Error, std::io::Error>: TokioAsyncReadCompatExt`
            `&rustls_acme::Incoming<Compat<tokio::net::TcpStream>, std::io::Error, futures_util::stream::MapOk<TcpListenerStream, [closure@src/control.rs:212:91: 212:127]>, std::io::Error, std::io::Error>: tokio::io::AsyncRead`
            which is required by `&rustls_acme::Incoming<Compat<tokio::net::TcpStream>, std::io::Error, futures_util::stream::MapOk<TcpListenerStream, [closure@src/control.rs:212:91: 212:127]>, std::io::Error, std::io::Error>: TokioAsyncReadCompatExt`
            `&mut rustls_acme::Incoming<Compat<tokio::net::TcpStream>, std::io::Error, futures_util::stream::MapOk<TcpListenerStream, [closure@src/control.rs:212:91: 212:127]>, std::io::Error, std::io::Error>: tokio::io::AsyncRead`
            which is required by `&mut rustls_acme::Incoming<Compat<tokio::net::TcpStream>, std::io::Error, futures_util::stream::MapOk<TcpListenerStream, [closure@src/control.rs:212:91: 212:127]>, std::io::Error, std::io::Error>: TokioAsyncReadCompatExt`

I'm not sure this can be solved reasonably within this library, but wanted to reach out just in case. Superficially it seems to me to be similar to the problem that came up with axum (https://github.com/FlorianUekermann/rustls-acme/issues/27), but it might be more complicated.

Thank you for the report. I'm recovering from the holidays today. But I'll take a look at this tomorrow. I'm sure we'll find a solution.

I published 0.5.2 with better tokio helpers and a warp example. You could have used TryStreamExt::map_ok, but I think it makes sense to provide those helpers for tokio.
Does this work for you?

This works great, thanks a lot! Indeed nice to have these helper methods for commonly used libraries.


Simplify and speed up the SeekOffsets code

~has: Use the similar function from the parent Map class, hoping that that
is potentially faster than the brute-force approach through keys/some~
pop: Replace the complex and inefficient O(n)-ish logic with a simpler
O(1) approach.
We don't need to make an array of all entries, reverse that, and then pop
one element -- we only need to know the first key/value pair.

Hold off on this one please.
has doesn't work this way unfortunately, because of how the Map equality works. The change in pop should still be fine.

Removed the has change; this should be good to go now.
I see the checks failing, and I have some issues locally on getting a stable test run -- looks a lot like flakes to me though (apart from the Azure database misconfiguration?)

Could you merge latest master into this, and we can get it merged?

@Nevon sure :)


Execute button functions on new tabs

Thank you for the author's sharing. I have a question. If my button is created in the sidebar and I want to use it as a standalone shortcut page, but it is found that if the button's action is specific to the page where the cursor is located, which means that the button can only work on the current page where the button is located, it cannot be used as a special shortcut. I would like to know if there is a solution.
A page is an editing page, while B page is my button collection, and many operations cannot be performed on A page。

this isn't currently possible


Ensure matching dll and xml object keys

3h

BaseDfa.GetTransitions(...) doesn't match

3h 36m

26m

Total: 7h 2m


New Modeler 18 install does not associate icon and show blank.

When using the new Extensions installation feature in Modeler 18, the MLlib_Pagerank does not associate the icon shown in the GitHub site but rather shows a blank node.

@wujiazhong Do we know if this can be fixed on our side?

I tried on Modeler 18 and could see that icon.

I also checked the extension resbundle. The icon is included in that package. So @hangtime79 could you provide more details? It might not be a problem of extension.

I went through the following same steps

Clean install of Windows Modeler 18 64-bit, Windows Modeler Premium 18 64-bit, Windows Modeler 18 R Essentials
Open Modeler 18
Open the Extensions dialog
Install the PageRank node

Which version of modeler do you install? Note that only 18 GA can show the icon well.

I've been seeing this issue on OSX a lot lately.  If I look in the .cfe file where it gets installed, the image file is there but has size 0.


Support request: the action runs endlessly and no error log when killing it

Hi. I'm trying to integrate the action to our repo. However the action runs endlessly and when I cancel the job, it doesn't return any error logs.
Here is the failed job: https://github.com/runfinch/finch/actions/runs/4674802644/jobs/8279317656
Tried to change the action's retry times from 10 to 1, and still same result. https://github.com/runfinch/finch/actions/runs/4687195475/jobs/8306182036

Get logs in debug logging. Closing.


LocalDocker implemented

Fixes #11

Pull Request Test Coverage Report for Build 37

11 of 12 (91.67%) changed or added relevant lines in 2 files are covered.
4 unchanged lines in 1 file lost coverage.
Overall coverage increased (+11.7%) to 29.508%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

src/main/java/com/amihaiemil/docker/LocalDocker.java
10
11
90.91%

Files with Coverage Reduction
New Missed Lines
%

src/main/java/com/amihaiemil/docker/RtDocker.java
4
37.5%

Totals

Change from base Build 35:
11.7%

Covered Lines:
90

Relevant Lines:
305

💛  - Coveralls

Pull Request Test Coverage Report for Build 37

11 of 12 (91.67%) changed or added relevant lines in 2 files are covered.
4 unchanged lines in 1 file lost coverage.
Overall coverage increased (+11.7%) to 29.508%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

src/main/java/com/amihaiemil/docker/LocalDocker.java
10
11
90.91%

Files with Coverage Reduction
New Missed Lines
%

src/main/java/com/amihaiemil/docker/RtDocker.java
4
37.5%

Totals

Change from base Build 35:
11.7%

Covered Lines:
90

Relevant Lines:
305

💛  - Coveralls

@rultor merge it

@rultor merge it

@amihaiemil OK, I'll try to merge now. You can check the progress of the merge here

@rultor merge it

@amihaiemil Done! FYI, the full log is here (took me 2min)


BUG:Transaction navbar doesnt match other navbars

Is there an existing issue for this?

[X] I have searched the existing issues

What happened?
The navbar in transaction page needs to be fixed

Record

[X] I agree to follow this project's Code of Conduct
[X] I'm a GSSOC'24 contributor
[X] I want to work on this issue

#709


Add Python SDK

Refer to SDKs in other languages for reference.
Remember to think about release process i.e. how to make this available for customers (pip of whatever is used).

https://github.com/fluxninja/aperture/pull/1574


How to visualise filters of MXNet model?

How to visualise filters of MXNet model like what has been done in keras - https://blog.keras.io/how-convolutional-neural-networks-see-the-world.html?

Thanks for the reference. We have been working on enabling visualization of MXNet data in the TensorBoard. You can see the design proposal here: https://cwiki.apache.org/confluence/display/MXNET/Logging+MXNet+Data+for+Visualization+in+TensorBoard
After the PR is merged, this might be a good tutorial to write about how to use the visualization tool in MXNet.

Hi this solution applies to the gluon framework. I am not sure if you want to visualize the weights or the output of the convolution for some input (the latter is what I usually do).
Assuming you have a model, in the forward call you can return more than the last layer and visualize them:
%pylab inline

import mxnet as mx
from mxnet import gluon, nd

class tNet(gluon.nn.HybridBlock):

    def __init__(self,**kwards):
        gluon.nn.HybridBlock.__init__(self,**kwards)

        with self.name_scope():

            self.layer1 = gluon.nn.Conv2D(12,kernel_size=3,padding=1)
            self.layer2 = gluon.nn.Conv2D(12,kernel_size=3,padding=1)

    def hybrid_forward(self,F,_input):

        out1 = self.layer1(_input)
        out2 = self.layer2(out1)

        return out1, out2

mynet = tNet()
mynet.initialize(mx.init.Xavier())
xx = nd.random_uniform(shape=[4,12,128,128])
out1, out2 = mynet(xx)
imshow(out1[0,0].asnumpy())

this produces the following image:

Now say you want to visualize the weights only of a layer, without the convolution. For example you can obtain the weights of self.layer2 or self.layer1 like this:
layer2_weight = mynet.layer2.weight.data() # This is an NDArray object

mynet.layer2.weight.data().shape
# prints (12,12,3,3) for this particular example.

so you can create histograms etc. Hope this helps.

We have open-sourced MXBoard which enables users to visualize MXNet data (including network structures) in TensorBoard. In your case, you can just simply pass the weights/filters to the logging API and view it in TensorBoard.
The current version on PyPI is 0.1.0rc3. You can either install from source or pip install. The GitHub site has rich examples and tutorials on installation and how to use it in MXNet. Could you try it and give us feedbacks? Thanks.

@sandeep-krishnamurthy good answer on this, so good to close. thanks!


Import browser-source-map-support in development

As it was, in development environment it was not including browser-source-map-support.js hence when running localhost:4200/tests in development mode a global failure was shown.

Thanks for contributing!


utf-8 instead of latin-1

Sorry to bug you again, but the log for #mozilla-taiwan is giving us mojibake. Can we use utf-8 as the encoding instead of latin-1?

Could be nothing wrong with the code, rather a server config issue.
MySQL databases should be set to utf8 instead of latin1 which is the default.

Came across a good article on this http://www.xpertdeveloper.com/2012/01/store-unicode-in-mysql/


[Feature]: Expose more options to configure underlying floating-ui for advanced popper positioning

Describe the feature
It would be very handy if floating-ui-powered components exposed more props to control underlying floating-ui configuration.
For example I've recently stumbled across a task to implement a more advanced positioning technique for one of our Popover usages. While it was really easy to achieve with fallbackPlacements option for flip middleware, unfortunately radix-vue doesn't support passing these. So instead I had to workaround it with a computed side prop and do my own math when exactly side should change.
Prepared this sandbox to demonstrate https://codesandbox.io/p/sandbox/floating-ui-react-dom-template-forked-hjzlcc?file=%2Fsrc%2FApp.js%3A13%2C36. If you open sandbox in a separate window and try to resize floating content will first flip to the bottom and then will start shifting to remain in the viewport.
So just allowing fallbackPlacements would have solved it for me but maybe we should expose even more options? Not exactly sure what API would be though but I'm willing to start a PR on this.
Could be a good fit for v2.
Additional information

[X] I intend to submit a PR for this feature.
[ ] I have already implemented and/or tested this feature.

Nice suggestion @romansp ! Yup previously we had the same props and feature as in RadixUI. We can definitely extend further in v2! 😁

definitely looking forward to this one as it will fix this i believe: https://github.com/radix-vue/radix-vue/discussions/1000
floating-ui offers an absolute position option, and all the floating-ui examples work perfect with no lag

Specifically this: https://floating-ui.com/docs/usefloating#strategy

Considering disabling autoUpdate is also a feature request on Radix UI, we will add this prop too to allow Popper to not update when layout changes.

Added in reka-ui@latest https://github.com/unovue/radix-vue/commit/0790f870db9c1970283bac52dc05fa5af66cc153 😁


export.py: write binary files, directory traversal

Would be glad if you could test whether it fixes the broken PNGs on windows (#12) and whether it was possible for evil modpaks to write files into ancestor directories.

any news or comments on this?

@mk-pmb Thank you, this functionality has already been merged, but with code style altered to fit the project. See the commit history here, check the changes, and let me know if I missed something! :)
https://github.com/blixt/py-starbound/commits/master

I see the first commit merged in 9c0b0229a1585ef5639e5e273b90ad6c9f90f9c2 , but the directory traversal vulnerability is still exploitable in current master's export.py.


Duplicate table index on query with any edge

The following query fails with the following error:
INTERNAL Error: Duplicate table index "1" found
Test from basic_match.test
query II
-SELECT study.a_name, study.b_name
FROM GRAPH_TABLE (pg
    MATCH
    (a:Person)-[k:Knows]-(b:Person)
    WHERE a.name = 'Peter'
    COLUMNS (a.name as a_name, b.name as b_name)
    ) study
    ORDER BY a_name, b_name;
----
Peter	Daniel
Peter	David
Peter	Gabor
Peter	Tavneet

Asked for clarification in Discord https://discord.com/channels/909674491309850675/921100573732909107/1182348485442404503
Following query reproduces the same results but does not run into this issue:
query II
select study.a_name, study.b_name from
    (SELECT DISTINCT a."name" AS a_name, b."name" AS b_name
        FROM know AS k , Student AS b , Student AS a
        WHERE ((((a.id = k.src) AND (b.id = k.dst)) OR ((a.id = k.dst) AND (b.id = k.src)))
        AND (a."name" = 'Peter')))
    AS study
    ORDER BY a_name, b_name;
----
Peter	Daniel
Peter	David
Peter	Gabor
Peter	Tavneet

Disabling the optimizer rule: OptimizerType::COMPRESSED_MATERIALIZATION stops the error from arising

Try again in version v0.10.*

Update after merge with v0.10.0
Same behaviour
INTERNAL Error: Duplicate table index "1" found

Possibly related to #107


Update index.js

Hi! It's really exciting that you contributed a pull request! I'm a little unsure that simply catching and ignoring the error is the proper thing to do here though. Which OS were you having errors on? Maybe the 'ps' command needs fixing.

Looking at this again, a little older and wiser, I'm reading this comment:
"// Catch error msg else treekill will throw an uncaught Exception" (emphasis mine)
As in an uncatchable exception? Not simply tree-kill throwing an error, but node crashing. If this is the case, I definitely think handling stream errors is a wise addition, however I ask that the error be passed along to the callback rather than silently ignored.

I don't really have enough information to act on this... but if it's throwing an error that's a symptom of a deeper problem that should be addressed. I don't think I should merge in a PR that silently ignores the error.


Update Select2 plugin to version 4.0.3

Fix more issues, including https://github.com/select2/select2/issues/3990

Thanks for the contribution!


Add section on using runsc with cri-o

Add a section to the Kubernetes docs on using runsc with cri-o.

Related: https://github.com/google/gvisor/issues/193


Use rabbitmq for channels backend?

Currently, redis is being used as our backend for channels. rabbitmq is preferable, as we are also using it for celery. The following library seems to suggest that rabbitmq can be used as a backend: https://pypi.org/project/channels-rabbitmq/, but there is no official documentation on the channels page: https://channels.readthedocs.io/en/stable/topics/channel_layers.html#channel-layers
channels went through a big update when version 2 was released, but it looks like rabbitmq was supported in version 1: https://channels.readthedocs.io/en/1.x/backends.html#rabbitmq

Decided to stick with Redis


Said A in the middle

the starting word was inert, the two words to find were crush and doubt but it kept saying their was an A in the middle when neither word has an A


Add support to open/enter a sofa file without reading the data

For large files reading the entire file into memory is not always economic.
To solve this, we could support opening sofa files without reading the data into memory using the enter method.
This is already supported by netcdf
with Dataset(filename, "r", format="NETCDF4") as file:
    # read the data here

In addition we could use support netcdfs slicing support for arrays to improve this even further, i.e. for channel wise reading of data or reading only partial spherical harmonic orders, etc.

This might help: https://python-sofa.readthedocs.io/en/latest/_modules/sofa/_database.html#Database.open

@mberz how about doing it this way:
from netCDF4 import Dataset

filename = 'some\file.sofa'

class SofaStream():

    def __init__(self, filename):
        self._filename = filename

    def __enter__(self):
        self._file = Dataset(filename, mode='r')
        return self

    def __exit__(self, *args):
        self._file.close()

    def __getattr__(self, name):
        if name.startswith('GLOBAL_'):
            name = name.replace('GLOBAL_', '')
        # more handling of name. getattr would also
        # return variables and dimensions

        return getattr(self._file, name)

with SofaStream(filename) as file:
    # access data inside SOFA files
    # according to sofar naming conventions
    print(file.GLOBAL_RoomType)

It would generally work. A problem is that the names inside the SOFA files follow NetCDF convention and are different from the names of the attributes in the sofar.SOFA object. Hints to how it could be done may be found in the __getitem__ method of the NetCDF Python API. But it is more tricky than initially expected


[Bug] Not able to send emails on Solus Linux distro

If we put aside the Exchange account (issues already opened), I can send emails using my disroot.org account. However, this seems to work only from my Xubuntu 18.04 chroot within SailfishOS. When trying to send mail from the same account and similar main.conf from my computer running Solus, all attempts fail. libetpan 1.9.3-3 and lipetpan-devel 1.9.3-3 are installed.
There may be issues even from the phone when I try attaching files, however, as you didn't receive this email despite it being sent from the phone. This will likely need a separate issue, but I am starting to mix up log files so I will postpone that to later.
I will send you a log file from the computer when attempting to send an email. However the file is already 14 MB with just this attempt. Is there something I can delete from the file before sending it?

Sure, let me review README.md and if it can be made clearer.

In the fix of #19 the README.md was updated to better clarify the logging levels. Feel free to let me know if it is still unclear.

FYI - I tried sending email using nmail under Solus now and I am able to reproduce the problem, so I don't need any log file for debugging.

I finally got a chance to debug this a bit.
Log extract from nmail under Solus:
2020-02-09 15:12:06.265 | DEBUG | smtp->auth = 0xd  (smtp.cpp:127)
2020-02-09 15:12:06.265 | ERROR | mailsmtp_auth(smtp, m_User.c_str(),
m_Pass.c_str()) = MAILSMTP_ERROR_NOT_IMPLEMENTED  (smtp.cpp:129)

Authentication type in libetpan is a bitmask where 0xd is made up by:
  MAILSMTP_AUTH_CHECKED = 1,
  MAILSMTP_AUTH_PLAIN = 4,
  MAILSMTP_AUTH_LOGIN = 8,

mailsmtp_auth() calls mailsmtp_auth_type() when MAILSMTP_AUTH_PLAIN is set, which in turn calls mailesmtp_auth_sasl() which returns MAILSMTP_ERROR_NOT_IMPLEMENTED if libetpan is not built with libsasl2 support.
Checking with ldd also indicates that the Solus libetpan package is built without libsasl2 support.
Solus
    $ ldd /usr/lib/libetpan.so
      linux-vdso.so.1 (0x00007ffc295fb000)
      libexpat.so.1 => /usr/lib/libexpat.so.1 (0x00007fb74dc46000)
      libssl.so.1.0.0 => /usr/lib/libssl.so.1.0.0 (0x00007fb74dbd000)
      libcrypto.so.1.0.0 => /usr/lib/libcrypto.so.1.0.0 (0x00007fb74d976000)
      libz.so.1 => /usr/lib/libz.so.1 (0x00007fb74d95d000)
      libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x00007fb74d76e000)
      libm.so.6 => /usr/lib/libm.so.6 (0x00007fb74d620000)
      libc.so.6 => /usr/lib/libc.so.6 (0x00007fb74d435000)
      libgcc_s.so.1 => /usr/lib/libgcc_s.so.1 (0x00007fb74d41a000)
      libdl.so.2 => /usr/lib/libdl.so.2 (0x00007fb74d414000)
      /usr/lib64/ld-linux-x86-64.so.2 (0x00007fb74dd4e000)

Ubuntu 18.04 LTS*
    $ ldd /usr/lib/x86_64-linux-gnu/libetpan.so
      linux-vdso.so.1 (0x00007ffc5c371000)
      libdb-5.3.so => /usr/lib/x86_64-linux-gnu/libdb-5.3.so (0x00007f9d90a88000)
      libgnutls.so.30 => /usr/lib/x86_64-linux-gnu/libgnutls.so.30 (0x00007f9d90722000)
      libsasl2.so.2 => /usr/lib/x86_64-linux-gnu/libsasl2.so.2 (0x00007f9d90507000)
      libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007f9d902ea000)
      liblockfile.so.1 => /usr/lib/x86_64-linux-gnu/liblockfile.so.1 (0x00007f9d900e6000)
      libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f9d8fcf5000)
      libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f9d8fad6000)
      libp11-kit.so.0 => /usr/lib/x86_64-linux-gnu/libp11-kit.so.0 (0x00007f9d8f7a7000)
      libidn2.so.0 => /usr/lib/x86_64-linux-gnu/libidn2.so.0 (0x00007f9d8f58a000)
      libunistring.so.2 => /usr/lib/x86_64-linux-gnu/libunistring.so.2 (0x00007f9d8f20c000)
      libtasn1.so.6 => /usr/lib/x86_64-linux-gnu/libtasn1.so.6 (0x00007f9d8eff9000)
      libnettle.so.6 => /usr/lib/x86_64-linux-gnu/libnettle.so.6 (0x00007f9d8edc3000)
      libhogweed.so.4 => /usr/lib/x86_64-linux-gnu/libhogweed.so.4 (0x00007f9d8eb8f000)
      libgmp.so.10 => /usr/lib/x86_64-linux-gnu/libgmp.so.10 (0x00007f9d8e90e000)
      libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f9d8e70a000)
      /lib64/ld-linux-x86-64.so.2 (0x00007f9d910f3000)
      libffi.so.6 => /usr/lib/x86_64-linux-gnu/libffi.so.6 (0x00007f9d8e502000)

I would be inclined to think it's a Solus packaging bug in terms of how libetpan is configured/built for Solus.
When I find time I might try to build / install libetpan from source under Solus, to confirm it fixes the problem.

I figured I'd try building libetpan now. By first installing SASL and then downloading and building libetpan from source, and installing it, and then rebuilding nmail - I was able to send emails from Solus.
Some commands I used for reference:
sudo eopkg remove libetpan-devel
sudo eopkg install cyrus-sasl-devel
git clone https://github.com/dinhviethoa/libetpan
cd libetpan
./autogen.sh
make
sudo make install
cd
git clone https://github.com/d99kris/nmail
cd nmail
./genman.sh
cd build
sudo make install
ldd nmail

Based on above findings I will proceed to close this bug. The root cause will need to be fixed by the packager of libetpan on Solus - to ensure libetpan is built with SASL support enabled. Alternatively Solus users may use the workaround provided above - building libetpan from source.

Just to follow up, I reported this to the Solus team: https://dev.getsol.us/T8713
Thanks a lot for your time investigating it @d99kris.

Great, thank you! :)

Note that I followed your instructions above to build libetpan and rebuild nmail with it, but I get a few errors that I did not get with the old nmail installation procedure I was using until now:
mathieu@xiaomimi-solus ~/.config/nmail $ git pull
remote: Enumerating objects: 15, done.
remote: Counting objects: 100% (15/15), done.
remote: Compressing objects: 100% (8/8), done.
remote: Total 8 (delta 7), reused 1 (delta 0), pack-reused 0
Unpacking objects: 100% (8/8), 879 bytes | 48.00 KiB/s, done.
From https://github.com/d99kris/nmail
   3a3f625..ceacaae  master     -> origin/master
Updating 3a3f625..ceacaae
Fast-forward
 CMakeLists.txt |  2 +-
 README.md      |  1 +
 src/nmail.1    |  2 +-
 src/ui.cpp     | 20 ++++++++++++++------
 src/ui.h       |  4 +++-
 5 files changed, 20 insertions(+), 9 deletions(-)
mathieu@xiaomimi-solus ~/.config/nmail $ ./genman.sh
-- Found ccache
-- Using build type 'Debug' (default).
  Stop.
make[1]: *** [CMakeFiles/Makefile2:104: CMakeFiles/nmail.dir/all] Error 2
make: *** [Makefile:130: all] Error 2
mathieu@xiaomimi-solus ~/.config/nmail $ cat genman.sh
#!/bin/bash

# genman.sh builds application and (re-)generates its man-page

mkdir -p build && cd build && cmake .. && make -s && cd .. && \
help2man -n "ncurses mail" -N -o src/nmail.1 ./build/nmail
exit ${?}
mathieu@xiaomimi-solus ~/.config/nmail $ cd build/
mathieu@xiaomimi-solus ~/.config/nmail/build $ sudo make install
make[1]: Entering directory '/home/mathieu/.config/nmail/build'
make[2]: Entering directory '/home/mathieu/.config/nmail/build'
make[2]: Leaving directory '/home/mathieu/.config/nmail/build'
make[2]: Entering directory '/home/mathieu/.config/nmail/build'
make[2]: *** No rule to make target '/usr/lib/libetpan.so', needed by 'nmail'.  Stop.
make[2]: Leaving directory '/home/mathieu/.config/nmail/build'
make[1]: *** [CMakeFiles/Makefile2:104: CMakeFiles/nmail.dir/all] Error 2
make[1]: Leaving directory '/home/mathieu/.config/nmail/build'
make: *** [Makefile:130: all] Error 2
mathieu@xiaomimi-solus ~/.config/nmail/build $ ldd nmail
	linux-vdso.so.1 (0x00007ffe88cfa000)
	libncursesw.so.5 => /usr/lib64/libncursesw.so.5 (0x00007f83cac90000)
	libssl.so.1.0.0 => /usr/lib64/libssl.so.1.0.0 (0x00007f83cac1a000)
	libetpan.so.20 => /usr/lib64/libetpan.so.20 (0x00007f83cab56000)
	libpthread.so.0 => /usr/lib64/libpthread.so.0 (0x00007f83cab35000)
	libdl.so.2 => /usr/lib64/libdl.so.2 (0x00007f83cab2f000)
	libcrypto.so.1.0.0 => /usr/lib64/libcrypto.so.1.0.0 (0x00007f83ca8d5000)
	libstdc++.so.6 => /usr/lib64/libstdc++.so.6 (0x00007f83ca6e4000)
	libm.so.6 => /usr/lib64/haswell/libm.so.6 (0x00007f83ca5a4000)
	libgcc_s.so.1 => /usr/lib64/libgcc_s.so.1 (0x00007f83ca589000)
	libc.so.6 => /usr/lib64/haswell/libc.so.6 (0x00007f83ca3a2000)
	libexpat.so.1 => /usr/lib64/libexpat.so.1 (0x00007f83ca375000)
	libz.so.1 => /usr/lib64/libz.so.1 (0x00007f83ca35c000)
	/usr/lib64/ld-linux-x86-64.so.2 (0x00007f83cad26000)

I'll try to get a chance to set up Solus again and build libetpan from source, and document the steps properly here. It's possible I missed some command above.

I think the issue above was just due to nmail expecting /usr/lib/libetpan.so while I only had /usr/lib/libetpan.so.20 after building it, so I just made a symbolic link using sudo lns /usr/lib/libetpan.so.20 /usr/lib/libetpan.so (I use lns because I can never forget how to sort source and destination with ln -s :<) and now nmail seems to build correctly.
I'll have to test it for a few hours before knowing if it works fine.

I tried sending you an email from Solus using git version of libetpan and nmail 1.49, but got the "Sending message failed" error. I saved it to the drafts, which worked, and then tried to send the message from my draft folder as well: it failed again, but this time when prompted to save the draft and saying yes, that failed too, and the draft disappeared.
Not sure what is wrong with sending, I think we concluded it was due to libetpan in the Solus repository, so the git version should work fine.

Thanks for sharing the log!
Hmm.. I think the commands I provided earlier left out a step. I retried the steps now and realized I needed to manually delete system installed libetpan files. So what I did (prior to sudo make install in the libetpan directory) was to run sudo rm /usr/lib/libetpan.so* and the equivalent on your system would be sudo rm /usr/lib64/libetpan.so*.
Note: Having done so now I am unable to re-install Solus version of libetpan properly using eopkg (it simply recreates a symbolic link but does not create the actual library). This worked fine when I tried a few weeks ago. So if you are worried about messing the installation up I would perhaps suggest simply renaming all /usr/lib/libetpan.so* (or /usr/lib64/libetpan.so*) files instead of deleting.
After then rebuilding nmail it should find libetpan in /usr/local/lib/libetpan.* (note the different path). This can be confirmed after build by checking ldd build/nmail (please help share the output if still having problems). I tested this now, and the SMTP send in itself is successful, but somehow disroot has slow delivery now, so I haven't received any emails I sent to myself (via Solus, Ubuntu or macOS). The slow delivery should not be related to nmail I feel. Unfortunately even disroot webmail login is unavailable so I cannot confirm, but I believe they are having some general issues.

Thanks for the detailed instructions and explanations. Just did the same, I'll report back here if still having sending issues.
mathieu@xiaomimi-solus ~/.config/nmail/build $ ldd nmail
	linux-vdso.so.1 (0x00007ffdc49b5000)
	libncursesw.so.5 => /usr/lib64/libncursesw.so.5 (0x00007f1318e19000)
	libssl.so.1.0.0 => /usr/lib64/libssl.so.1.0.0 (0x00007f1318da3000)
	libetpan.so.20 => /usr/local/lib/libetpan.so.20 (0x00007f1318cd0000)
	libpthread.so.0 => /usr/lib64/libpthread.so.0 (0x00007f1318caf000)
	libdl.so.2 => /usr/lib64/libdl.so.2 (0x00007f1318ca9000)
	libcrypto.so.1.0.0 => /usr/lib64/libcrypto.so.1.0.0 (0x00007f1318a4f000)
	libstdc++.so.6 => /usr/lib64/libstdc++.so.6 (0x00007f131885e000)
	libm.so.6 => /usr/lib64/haswell/libm.so.6 (0x00007f131871e000)
	libgcc_s.so.1 => /usr/lib64/libgcc_s.so.1 (0x00007f1318703000)
	libc.so.6 => /usr/lib64/haswell/libc.so.6 (0x00007f131851c000)
	libexpat.so.1 => /usr/lib64/libexpat.so.1 (0x00007f13184ef000)
	libdb-5.3.so => /usr/lib64/libdb-5.3.so (0x00007f1318345000)
	libsasl2.so.3 => /usr/lib64/libsasl2.so.3 (0x00007f1318325000)
	libz.so.1 => /usr/lib64/libz.so.1 (0x00007f131830c000)
	/usr/lib64/ld-linux-x86-64.so.2 (0x00007f1318eb0000)

That was fast:
nmail: error while loading shared libraries: libetpan.so.20: cannot open shared object file: No such file or directory

Definitely not an error on nmail side. I will look into it after work hopefully.

I can confirm that the issue is still there, even from non-Exchange accounts, but also only on Solus somehow. I tried sending you some logs from my crashing Exchange account (#13), with git libetpan, Solus, and a Disroot account, but no luck.

Actually sudo ldconfig recreated a /usr/lib64/libetpan.so.20 symlink to my /usr/lib64/libetpan.so.20.4.back instead of picking the library built in /usr/local/lib/libetpan.so.20. This is why I am still having the issue, as nmail is not using the library built from sources but the faulty Solus library.

So I just moved my /usr/lib64/libetpan.so.20.4.back to another folder unrelated to libraries, removed all symlinks to it, and rebuilt libetpan from sources. This seems to have improved things because now nmail does run without the need of LD_PRELOAD and sudo ldconfig didn't recreate new symlinks in /usr/lib64, meaning nmail must be using the git version of libetpan from /usr/local/lib/. Yet, it still fails to send messages. Perhaps I should try to set a new account up.

It seems strange. Perhaps you can help share a log file from the last send attempt, I can see if there's anything odd in it.
On my side I tried setting up a fresh Solus Linux installation where I did the following to double-confirm I don't have issues sending emails from Solus:
Build nchat using Solus libetpan
sudo eopkg install git
git clone https://github.com/d99kris/nmail
cd nmail/
sudo eopkg install cmake
sudo eopkg install openssl-devel
sudo eopkg install ncurses-devel
sudo eopkg install help2man
sudo eopkg install lynx
sudo eopkg install -c system.devel
sudo eopkg install libetpan-devel
./genman.sh

Check paths of the Solus provided libetpan
$ ls -l /usr/lib64/libetpan.so*
lrwxrwxrwx 1 root root     18 Mar 21 16:02 /usr/lib64/libetpan.so -> libetpan.so.20.4.0
lrwxrwxrwx 1 root root     18 Mar 21 16:02 /usr/lib64/libetpan.so.20 -> libetpan.so.20.4.0
-rwxr-xr-x 1 root root 786736 Jun 12  2019 /usr/lib64/libetpan.so.20.4.0

$ ls /usr/include/libetpan.h
/usr/include/libetpan.h

$ ldd ./build/nmail
	linux-vdso.so.1 (0x00007ffeec1f1000)
	libncursesw.so.5 => /usr/lib/libncursesw.so.5 (0x00007ff84619e000)
	libssl.so.1.0.0 => /usr/lib/libssl.so.1.0.0 (0x00007ff846128000)
	libetpan.so.20 => /usr/lib/libetpan.so.20 (0x00007ff846064000)
	libpthread.so.0 => /usr/lib/libpthread.so.0 (0x00007ff846043000)
	libdl.so.2 => /usr/lib/libdl.so.2 (0x00007ff84603d000)
	libcrypto.so.1.0.0 => /usr/lib/libcrypto.so.1.0.0 (0x00007ff845de3000)
	libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x00007ff845bf2000)
	libm.so.6 => /usr/lib/libm.so.6 (0x00007ff845aa4000)
	libgcc_s.so.1 => /usr/lib/libgcc_s.so.1 (0x00007ff845a89000)
	libc.so.6 => /usr/lib/libc.so.6 (0x00007ff8458a0000)
	libexpat.so.1 => /usr/lib/libexpat.so.1 (0x00007ff845873000)
	libz.so.1 => /usr/lib/libz.so.1 (0x00007ff84585a000)
	/usr/lib64/ld-linux-x86-64.so.2 (0x00007ff846219000)

Remove Solus libetpan
sudo eopkg remove libetpan-devel
sudo rm /usr/lib/libetpan.so.20*
sudo rm -rf /usr/include/libetpan*

Build / install libetpan from sources
cd ~
git clone https://github.com/dinhviethoa/libetpan
cd libetpan
sudo eopkg install cyrus-sasl-devel
./autogen.sh
make -s
sudo make install

Clean rebuild nmail
cd ~/nmail
rm -rf build
./genman.sh

Confirm new libetpan path
$ ldd ./build/nmail
	linux-vdso.so.1 (0x00007fff01b44000)
	libncursesw.so.5 => /usr/lib/libncursesw.so.5 (0x00007fd0700e9000)
	libssl.so.1.0.0 => /usr/lib/libssl.so.1.0.0 (0x00007fd070073000)
	libetpan.so.20 => /usr/local/lib/libetpan.so.20 (0x00007fd06ffa1000)
	libpthread.so.0 => /usr/lib/libpthread.so.0 (0x00007fd06ff80000)
	libdl.so.2 => /usr/lib/libdl.so.2 (0x00007fd06ff7a000)
	libcrypto.so.1.0.0 => /usr/lib/libcrypto.so.1.0.0 (0x00007fd06fd20000)
	libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x00007fd06fb2f000)
	libm.so.6 => /usr/lib/libm.so.6 (0x00007fd06f9e1000)
	libgcc_s.so.1 => /usr/lib/libgcc_s.so.1 (0x00007fd06f9c6000)
	libc.so.6 => /usr/lib/libc.so.6 (0x00007fd06f7dd000)
	libexpat.so.1 => /usr/lib/libexpat.so.1 (0x00007fd06f7b0000)
	libsasl2.so.3 => /usr/lib/libsasl2.so.3 (0x00007fd06f792000)
	libz.so.1 => /usr/lib/libz.so.1 (0x00007fd06f777000)
	/usr/lib64/ld-linux-x86-64.so.2 (0x00007fd070164000)

Tested sending email using nmail
./build/nmail

OK - sending using disroot account
OK - sending using gmail account

Interestingly, I did exactly what you did above and I can now send emails from Disroot, thanks.
Just to clarify: I did not get any error during build with what I did before, nmail was using the correct libetpan library according to ldd, and all dependencies were installed. However, there are a few variations, like deleting libetpan.h or deleting the build folder before rebuilding, so maybe that was the issue.
I am still having trouble sending emails from my professional Exchange account (#22), but I suppose the Solus-specific issue is solved (I hope they update their repository version of libetpan soon).

Great to hear, thanks for testing. Then I'll close this issue and we'll track the Exchange issue in #22.


Add related_job_titles to admin/occupation_standard show view

Asana ticket: https://app.asana.com/0/1203289004376659/1205444475106613/f

@jenlu33 this looks good, but there's a broken test.
Administrate expect all the fields to be database fields and, based on the error, it's trying to search on that new field, which is not really a db field.
If we don't care about search using this field, we can tell administrate to avoid searching on this field with this change:
related_job_titles: Field::String.with_options(searchable: false),

That should make the test pass.

@jenlu33 this looks good, but there's a broken test.
Administrate expect all the fields to be database fields and, based on the error, it's trying to search on that new field, which is not really a db field.
If we don't care about search using this field, we can tell administrate to avoid searching on this field with this change:
related_job_titles: Field::String.with_options(searchable: false),

That should make the test pass.

Great, thank you! I was trying to google way to fix the specs and I couldn't figure it out


window --focus prev doesn't cycle in monocle layout

In conjunction with khd, If I switch to the monocle layout -
ctrl + alt - s : chunkc tiling::desktop --layout monocle

Using window --focus next will properly cycle back to the beginning of the windows; however, prev won't; it'll stop at the "first" window and successive calls to prev don't seem to do anything.
alt - j : chunkc tiling::window --focus prev
alt - k : chunkc tiling::window --focus next

I believe this is your issue: It only cycles if you set window_focus_cycle to monitor (as opposed to all), see previous discussion at https://github.com/koekeishiya/chunkwm/issues/15#issuecomment-302876509

Also, I just noticed that chunkc config window_focus_cycle all does not behave like chunkc config window_focus_cycle monitor if there's only a single monitor. There's no wraparound with all.

This is because the all option works fundamentally different from the monitor option, but will take a look at possible solutions for this. Currently, the all option does not wrap last monitor -> first monitor and first monitor -> last monitor either.

I'm able to reproduce. Weird bug..

@koekeishiya - FWIW, I'm about 85% sure that I had this same problem with kwm.


client: prevent time display in the queue from being cut off

Time column disappears when window is too thin
Time column can cut off part of 4-digit times

What's/is there the smallness cut off for unsupported/too small?

I have no idea what you are talking about.

I'm wondering about the minimum window width. To consider this bug/enhancement satisfied, do you want this column to show no matter how thin the window is, or do you have an idea of a reasonable cut off where it's ok for it not to show because nothing looks good at that size of smallness/thinness?

Ah I see. It should keep all the columns visible always, and just make the columns smaller and start cutting off the text as the window gets smaller. Also, as noted above, 4-digit times are getting cut off when they have plenty of space to grow.

And as always, if you have an idea that is better than status quo, then let's do that.


does it work with VSTS online?

Want to know if the tool work with VSTS online? Where to install the tool in case of VSTS online?

Just click install from this link: https://marketplace.visualstudio.com/items?itemName=WaelHamze.xrm-ci-framework-build-tasks
Make sure you login to the right VSTS account with the right permissions to install the extension

I am getting below error:
Searching for applicable products...
6/21/2017 4:47:28 PM - Found installed product - Microsoft Visual Studio Enterprise 2015
6/21/2017 4:47:28 PM - Found installed product - Microsoft Visual Studio Professional 2015
6/21/2017 4:47:28 PM - Found installed product - Microsoft Visual Studio Community 2015
6/21/2017 4:47:28 PM - Found installed product - Microsoft Visual Studio 2015 Shell (Integrated)
6/21/2017 4:47:28 PM - Found installed product - Global Location
6/21/2017 4:47:28 PM - Found installed product - Visual Studio Community 2017 (2)
6/21/2017 4:47:28 PM - VSIXInstaller.NoApplicableSKUsException: This extension is not installable on any currently installed products.

Here are some instructions on how to install extensions: https://www.visualstudio.com/en-us/docs/marketplace/get-vsts-extensions


Cisco and Bluecoat issues

Hello, these two checks are giving errors. any ideas?
[*] Fetching domain reputation for: google.com
[*] BlueCoat: google.com
[+] google.com: HTTP Error (400-) - Is your IP blocked?
[*] IBM xForce: google.com
[+] google.com: Search Engines / Web Catalogues / Portals, (Score: 1)
[*] Cisco Talos: google.com
[-] Error retrieving Talos reputation! Expecting value: line 1 column 1 (char 0)
[+] google.com: error

Hi @MrTiptop
this means that the IP you are using to perform the request might be blocked by them.
Run the check manually via: https://sitereview.bluecoat.com/ from the same IP.
Best regards
Christoph

Hello, no this is error 400 (Bad Request). 423 would be blocked

Regards
Robbie
From: Timmi @.>
Reply to: threatexpress/domainhunter @.>
Date: Thursday, 12 May 2022 at 11:02
To: threatexpress/domainhunter @.>
Cc: MrTiptop @.>, Mention @.***>
Subject: Re: [threatexpress/domainhunter] Cisco and Bluecoat issues (Issue #41)
Hi @MrTiptophttps://github.com/MrTiptop
this means that the IP you are using to perform the request might be blocked by them.
Run the check manually via: https://sitereview.bluecoat.com/ from the same IP.
Best regards
Christoph
—
Reply to this email directly, view it on GitHubhttps://github.com/threatexpress/domainhunter/issues/41#issuecomment-1124715727, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AHYCIQUJ5H3VXL7M44DI6XTVJTCCXANCNFSM5VXQOH4A.
You are receiving this because you were mentioned.Message ID: @.***>

OK, so you can run the check manually.
In that case I'm sorry I can't help.

So, just FYI, PR #37 fixed the issues

Regards
Robbie
From: Timmi @.>
Reply to: threatexpress/domainhunter @.>
Date: Thursday, 12 May 2022 at 11:08
To: threatexpress/domainhunter @.>
Cc: MrTiptop @.>, Mention @.***>
Subject: Re: [threatexpress/domainhunter] Cisco and Bluecoat issues (Issue #41)
OK, so you can run the check manually.
In that case I'm sorry I can't help.
—
Reply to this email directly, view it on GitHubhttps://github.com/threatexpress/domainhunter/issues/41#issuecomment-1124723035, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AHYCIQRYQ4NVOMF6N6LGWLLVJTC5PANCNFSM5VXQOH4A.
You are receiving this because you were mentioned.Message ID: @.***>


Old data sticks around in autograph underworld after Likelihood.set_data

When changing datasets with Likelihood.set_data (introduced in #24), autographed functions from tensorflow will continue to refer to the old dataset. This is most visible when you set a dataset with a larger number of batches: then likelihood evaluation with autograph=False works, but with autograph=True it crashes due to an index out of bounds error that can be traced back to here https://github.com/FlamTeam/flamedisx/blob/592562d4654cf77d69d55b91b145a2f4bb36f02d/flamedisx/inference.py#L351
There is actually a comment here https://github.com/FlamTeam/flamedisx/blob/592562d4654cf77d69d55b91b145a2f4bb36f02d/flamedisx/inference.py#L169 that says a retrace is needed (but not done) if the number of batches or padding changes -- which would be always, unless the number of events is exactly equal. In fact, even in that case, a retrace is needed (but not done) with the current implementation.
Likelihood, unlike Source, does not pass the data tensors as arguments to the traced functions. Instead, we get the data tensor from the state of the source (Source.data_tensor). Tensorflow's autograph references the tensor under Source.data_tensor at the moment of tracing, and does not trace the dynamic access to the python attribute of Source.data_tensor.
We should access Source.data_tensor in the python layer, and pass it as an argument to the tensorflow layer, along (I guess) with other needed info such as the amount of padding.
For the moment just not using Likelihood.set_data, or being religious about autograph=False if you do, are the only workarounds I can think of.

Interesting, what happens when you turn off autograph for LogLikelihood._log_likelihood, but keep it on for Source.differential_rate. My guess is that is works correctly that way. Since we get the main performance benefit from the tracing of differential_rate just turning off the outer log_likelihood tracing might be an easy fix until we rewrite set_data to trigger the retrace.

Implemented in #55 retracing the likelihood is now done after each call to LogLikelihood.set_data so no old data sticks around any more. This solves the bug, but performance has to be evaluated. As stated above, we could implement _log_likelihood similar to Source.differential_rate.


[hmtx] Follow casing conventions for structure names

The casing conventions elsewhere in the spec use Pascal case for table and record names. In this page, "longHorMetric record" should be changed to "LongHorMetric record".

Document Details
⚠ Do not edit this section. It is required for learn.microsoft.com ➟ GitHub issue linking.

ID: b569bf16-eea2-0953-3345-024bbd9bd8d4
Version Independent ID: 5e1b6957-a7c9-fef1-5928-dca56d848565
Content: hmtx - Horizontal metrix table (OpenType 1.9) - Typography
Content Source: typographydocs/opentype/spec/hmtx.md
Product: typography
GitHub Login: @PeterCon
Microsoft Alias: alib

See OT 1.9.1 alpha for draft revisions addressing this issue.

This is fixed in OT 1.9.1. See the OT 1.9.1 beta for draft revisions addressing this issue.


Improve readme.

I added some further info and thoughts to the readme. Is there anything else that would be useful to mention here?

One comment, aside from that LGTM, thanks!

@chriadam Fixed it for you!

LGTM thanks


Add wait API endpoint for waiting on process exit

While running stress tests there would always be one or two shims that hang.  This was nothing wrong in the shim and the shims were properly sending the exit events.  However, the client would miss the event because of the small race where you connect to the event server and start a goroutine.
This adds a Wait endpoint that blocks until the process exits.  If the process has already exited when you call Wait it will immediately return the exit status and timestamp.
This moves much of the wait logic from the client to the server to properly handle this.
Nothing changes from the client POV so updating to the new version will just work for existing clients.
Signed-off-by: Michael Crosby<EMAIL_ADDRESS>

@crosbymichael you forgot to implement it for windows :troll:

@mlaventure i know, waiting on feedback on the overall design

the client would miss the event because of the small race where you connect to the event server and start a goroutine.

@crosbymichael Hm, how could this happen? If I remember correctly, we subscribe event first, and then start container, right?
Is it because event may loss after subscription? Or is it because subscribe is not synchronized operation, after subscribe, the event channel is not ready yet?

@Random-Liu its because of the go runtime and we cannot make sure the connection is blocking waiting for the event before calling start.

its because of the go runtime and we cannot make sure the connection is blocking waiting for the event before calling start.

Hm. If so, it seems that we have to implement this on the server side.
BTW, is there any golang or other issue for this behavior? I'd like to understand more.

LGTM on the API

@mlaventure windows fixed

Codecov Report

Merging #1525 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master    #1525   +/-   ##
=======================================
  Coverage   42.61%   42.61%
=======================================
  Files          24       24
  Lines        3318     3318
=======================================
  Hits         1414     1414
  Misses       1581     1581
  Partials      323      323

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update d700a9c...86d3aad. Read the comment docs.

rebased

LGTM

LGTM


Question : Stop Listening

How do you terminate the tj.listen(args) function?  I'm trying to string two (2) demos one after the other and want to stop the listen so I can restart it with a different set of parameters.

Hi @plwodi, sorry for the huge delay in responding, I didn't seem to get notified of your issue when you first opened it.  As of now, tj.listen() cannot be terminated from within the playground. We didn't add support for a tj.stopListen() method because it wasn't necessary for the exercises we defined.
If you really need this functionality, it is possible to add support for it by adding support for stopListen in the playground and in the tjbot-daemon. Note that tjbotlib does actually support tj.stopListen(), so it's just a matter of adding a new command in the playground and in the tjbot-daemon.  But again, we felt it was better to keep things simple by omitting it.


feat: implement queries throttle for switch account component

Try out Leather build 6c5eb45 — Extension build, Test report, Storybook, Chromatic

This pr throttles all balances queries on switch account list component, to prevent 429 errors

@314159265359879 want to QA this one by trying to "break" it with wallets that have lots of accounts and assets?

it looks like the coingecko API issue (error 403) was related to IP restrictions, please ignore. I don't see it now that I switched to another IP.

@314159265359879 wonder if you could test one more time please

I have waited until it does something again but it is not loading the name yet after selecting. I think it is prioritizing loading bitcoin data perhaps... there is no bitcoin in any of these accounts so it is a bit odd.

When I switch account scroll down from 156 to 400... I see one name loading. The rest of these accounts have names too but they are not yet displayed.

is it possible to prioritize loading the names?

@alter-eggo I downloaded the latest build here ...none of my Stacks NFTs are loading. 🤔

@fbwoolf thanks for testing! fixed

Does this apply to "Select account" for the recipient field of the send form as well?

@markmhendrickson yes


Fix

Fix -> Once you get https://github.com/3arthqu4ke/Phobot.git it sets the folder to Phobot, and its phobot in gadle, creates an error

This is to hopefully deal with any issues when getting the client from vcs

Whats the error?

Whats the error?

Its with the package name, had to fix it in my case, with the exact version from vcs (.git) cant really remember what exactly it said, but it was smthn like IllegalStateException abstract entity Phobot ... something

Whats the error?

Its with the package name, had to fix it in my case, with the exact version from vcs (.git) cant really remember what exactly it said, but it was smthn like IllegalStateException abstract entity Phobot ... something

Here you can really just test it yourself, by going in intellij idea, clicking get from vcs, pasting in this repo url, and hit sync button

and about classifier, after i fixed the package issue, another appeared, and after removing these 2 lines i was able to sync the project.

This is an Intellij issue: https://youtrack.jetbrains.com/issue/IDEA-317606/Changing-only-the-case-of-the-Gradle-root-project-name-causes-exception-while-importing-project-java.lang.IllegalStateException
Just clone into the correct folder

A problem occurred evaluating root project 'phobot'.

Could not find method classifier() for arguments [dev-shadow] on task ':fabric:shadowJar' of type com.github.jengelman.gradle.plugins.shadow.tasks.ShadowJar.


HTTPS by default

All requests are made over SSL
Tested in staging (and briefly in production - by accident 😱). HSTS works as expected.
There's a low HSTS value. It should be at least 90 days. We can bump it once we roll this out and don't see too many issues.
This is possible thanks to ok-client using requests with bundled SSL certs. Ok Client's --insecure flag should now only be used for development.

We should deploy to staging one more time just to be sure

I agree - thanks for removing the if. I can test it in staging.

It's not serving the HSTS header on the HTTP request 💯


Speedup import benchmark

remove wasm size benchmark for a while until figured how to skip setup
reduce iterations

Can you explain a bit:

Creating the db lazily with an iterator looks nicer indeed. But we're going to create all of them in the range of (5, 15) anyhow, unless if there's a chance to exit early? in that case creating them ahead of time and lazily shouldn't make a different.

What is the main problem with benchmarks taking too much? we don't run them in the CI, nor should one expect them to be fast.

Thanks @kianenigma

Can you explain a bit:

Creating the db lazily with an iterator looks nicer indeed. But we're going to create all of them in the range of (5, 15) anyhow, unless if there's a chance to exit early? in that case creating them ahead of time and lazily shouldn't make a different.

Unfortunately, criterion does collect this iterator anyway, so it's useless now. I will workaround this in following work. Problem is that criterion still runs all those setup functions (which can take quite a while) before figuring out which benchmarks to actually perform (when they are filtered). Later we probably move each benchmark in separate crate because of that.

What is the main problem with benchmarks taking too much? we don't run them in the CI, nor should one expect them to be fast.

The problem is that benchmarks must run on one machine exclusively, so each one should be dedicated to one particular point of interest, and take as little time as possible to accomplish the goal with least variance.


Question about Range

Hi! I'm trying to use library and don't understand this one:
package kdbush_test

import (
	"fmt"
	"github.com/raditzlawliet/kdbush"
	"testing"
)

func Test1(t *testing.T) {
	var points []kdbush.Point
	for i := -3; i <= 3; i++ {
		for j := -3; j <= 3; j++ {
			point := &kdbush.SimplePoint{
				X: float64(i),
				Y: float64(j),
			}
			points = append(points, point)
		}
	}
	bush := kdbush.NewBush().BuildIndex(points, kdbush.STANDARD_NODE_SIZE)
	for i := range bush.Range(-1, 1, 1, 1) {
		fmt.Println(points[i])
	}
}

output:
&{-3 -3}
&{-3 -2}
&{-3 -1}

I expect:
&{-1 1}
&{0 1}
&{1 1}

Can u explain why?

Hi @rugleb,
I try your code, and i think there's a little miss when you try to take the result.
func Test1(t *testing.T) {
	var points []kdbush.Point
	for i := -3; i <= 3; i++ {
		for j := -3; j <= 3; j++ {
			point := &kdbush.SimplePoint{
				X: float64(i),
				Y: float64(j),
			}
			points = append(points, point)
		}
	}
	bush := kdbush.NewBush().BuildIndex(points, kdbush.STANDARD_NODE_SIZE)
	for _, v := range bush.Range(-1, 1, 1, 1) {
		fmt.Println(points[v])
	}
}

&{-1 1}
&{0 1}
&{1 1}

In the loop result, the index result is in value of the result slices. It should be for _, v instead for i

LOL
Sorry, my bad.
TY.


Section "cr" is already defined, cannot redefine

Affected Puppet, Ruby, OS and module versions/distributions

Puppet: puppet-agent-5.5.1-1.el7.x86_64
Ruby: ruby 2.4.3p205 (2017-12-14 revision 61247) [x86_64-linux]
Distribution: CentOS Linux release 7.4.1708 (Core)
Module version: 2.2.1

How to reproduce (e.g Puppet code you use)
      include ::yum
      # Purge?
      resources { 'yumrepo':
        purge => true,
      }
      # RPM GPG Keys
      create_resources('yum::gpgkey', $rpm_gpg_keys)
      # Resource Ordering
      Yumrepo <| |> -> Yum::Gpgkey <| |> -> Package <| provider != 'rpm' |>

NOTE: $rpm_gpg_keys=>(epel gpg key) until PR96 is in :)
What are you seeing
After doing yum upgrade from 7.3 -> 7.4, the centos-release package automatically created the "default' /etc/yum.repos.d files. (specifically /etc/yum.repos.d/CentOS-*.repo)
The following error comes up during a puppet run:
Error: /Stage[main]/Profile::Linux::Software/Resources[yumrepo]: Failed to generate additional resources using 'generate': Section "cr" is already defined, cannot redefine (file: /etc/yum.repos.d/CentOS-CR.repo)

What behaviour did you expect instead
Shouldn't the resources { 'yumrepo': purge => true } take care of removing that duplicate?
Output log
See Error above
Any additional information you'd like to impart
Asked this question in Puppet Community Slack too, I think it may be a "puppet" bug, but I am considering that we should maybe try to create the "default" OS files as the same filenames as they would be created by the -release package, so that they are not duplicated? (if that is possible even)
[root@linux01 yum.repos.d]# rpm -ql centos-release | grep repo
/etc/yum.repos.d/CentOS-Base.repo
/etc/yum.repos.d/CentOS-CR.repo
/etc/yum.repos.d/CentOS-Debuginfo.repo
/etc/yum.repos.d/CentOS-Media.repo
/etc/yum.repos.d/CentOS-Sources.repo
/etc/yum.repos.d/CentOS-Vault.repo
/etc/yum.repos.d/CentOS-fasttrack.repo

They are listed as "config" files, so they would not be overwritten during upgrade.
~tommy

OK, so upon further investigation, its the resources { 'yumrepo': purge => true } that is causing the error:
[root@linux01 ~]# puppet apply -e 'resources { "yumrepo": purge => true }'
Notice: Compiled catalog for linux01.vagrant.local in environment vagrant in 0.10 seconds
Error: /Stage[main]/Main/Resources[yumrepo]: Failed to generate additional resources using 'generate': Section "cr" is already defined, cannot redefine (file: /etc/yum.repos.d/CentOS-CR.repo)
Notice: Applied catalog in 0.08 seconds

However, I wonder why none of the others (base, updates, etc) caused this error too? Why CR? anyone?

I need more information about how you added the CR repository. It might collide with the files from data/.
FYI: I explained in issue #94 how to remove repositories.

Steps to reproduce...

Install CentOS 7.5 (or whatever latest -1 is)
Remove all repos (rm -rf /etc/yum.repos.d/*)

NOTE: We do this because we do not have Internet access, and have to replace the OS provided repos with ones that get packages from an internal mirror (Artifactory in our case)

Run puppet with the yum repo  (puppet apply -e 'include yum'?)
Look at what is created in /etc/yum.repos.d ... should be like base.repo, updates.repo, cr.repo, etc
Upgrade to the most recent (7.6 currently) CentOS... (yum upgrade -y)
Look again at what is in yum.repos.d (this time in addition to the files that puppet created, you will have several more files like CentOS-Base.repo, CentOS-CR.repo, etc., which are duplicates to the ones that puppet is managing
Now, if you try purging yumrepo resources with resources { yumrepo: purge => true } in your puppet code, it will give an error similar to the one above (maybe not specifically "cr")

So, I think based on everything else I have seen, the actual problem is the "yumrepo" type/provider. This module could workaround this issue using file resource backing and build the purge option in, rather than depending on the resources { yumrepo: purge => true }.
Alternatively, the "cause" of this problem, which is an environment specific packer build script that removes all files from /etc/yum.repos.d, could be adjusted to truncate the file instead of removing it, which, since it is a "config" file in the repo, would not be overwritten.
I am going to close this one.
Thanks,
Tommy

One other note, as of Puppet 6, the yumrepo resource type finally has a "target" parameter (that doesn't say not to use it) .. so the target could be set to the "expected" filename from the OS packages:
$ rpm -qV centos-release
missing   c /etc/yum.repos.d/CentOS-Base.repo
missing   c /etc/yum.repos.d/CentOS-CR.repo
missing   c /etc/yum.repos.d/CentOS-Debuginfo.repo
missing   c /etc/yum.repos.d/CentOS-Media.repo
missing   c /etc/yum.repos.d/CentOS-Sources.repo
missing   c /etc/yum.repos.d/CentOS-Vault.repo
missing   c /etc/yum.repos.d/CentOS-fasttrack.repo

If anyone else is being bit by this, instead of deleting the files in /etc/yum.repos.d, truncate them (make them empty). As they are "config" files, they will not be replaced during upgrades unless they are missing.
for file in /etc/yum.repos.d/CentOS-*; do cat /dev/null > $file; done

... then you can continue to use any "custom" files you have created. :)
~tommy