IDE interfaces

Hi @derekparker,
First of all, Thank you for this!
While I haven't played with it yet, I plan to do so this weekend.
If all things work good enough, I'd be interesting in integrating it with the Go plugin for IntelliJ IDEA.
As I haven't seen anything that could help out IDEs do the interfacing part so I'd like to ask if there's any plans for this. I could potentially help out by defining an HTTP interface for it and just pipe all the commands to the debugger via HTTP calls / JSON responses. A side effect of this, then it could allow creating web interfaces for this.
What do you think? Does it make sense to you? If you'd like to chat, please drop me a mention on Gitter.
Kind regards

+1 for websockets. It is easy way for send messages from each side and easy to integrate with browsers to build webUI. I more interested with integration with GNU Emacs, it has libs for websockets support.

+1 for this feature, would be very useful for developers where I work.

@derekparker I just reviewed @dlsniper's websockets branch. Have you taken a look? What are the chances you'll eventually accept a PR based on the approach? It's not how I would have gone about the refactor, but it looks viable.
I ask because I was interested in starting to integrate delve with my own Sublime tooling, and am trying to decide where to most effectively spend my time (e.g. contributing to @dlsniper's branch, contributing to some other more acceptable branch you know of, starting my own client/server refactor, a stopgap interface to control the CLI directly, etc.)
Thanks for this tool!

I'll do the promised rebase this weekend as I finally have time for it, sorry for disappearing for a while.

I volunteer to help test the IDEA plugin, as I'm using it already and would love to help improve it.  A working Go debugging in IDEA is nirvana.

@ironcladlou I haven't taken a look recently, I've been polishing the OS X stuff and mucking around with the core. I'd like to take another look after the rebase has happened since there has been a lot of changes on master recently that may or may not affect this branch.
So to answer your question, I'm certainly open to more discussion around this, and if you were interested in working through a pure refactor I'd absolutely be open to that. There are no competing branches for this feature that I am aware of.
There are some high level refactors I would love to work on / accept PRs for, namely moving towards a client/server implementation with the existing cli, i.e. dogfood first with what exists and build out from there, essentially making the CLI a client of the server, preventing it from using proctl directly, instead sending commands with arguments to a core server which actually handles process manipulation.
Then with that refactor done, this PR could be simply adding a new client to the core debug server, with a standard interface that has been defined via usage by the CLI. If you'd be interested in working on that ( @ironcladlou or anyone else) I'd happily help move it along and merge it, as currently I'm spending a majority of my time working on the guts of the thing.
@dlsniper thanks for your work on this and I will promptly take a look at the branch post-rebase.

@derekparker @dlsniper
So, for discussion I thought it'd be faster to just start a POC of the client/server separation I had in mind. Here's my WIP branch:
https://github.com/derekparker/delve/compare/master...ironcladlou:http-api?expand=1
What I've done there is:

Started a public API in api/types.go. For now, and for simplicity's sake, this is unstable. Later, you could subpackage public types api/v1beta1 or something, use api/types.go as the internal types, and convert to/from internal/external with registered API converters. This would allow IDE integrators to have stable versioned APIs on which to build tools, while allowing you the flexibility to advance the API internally and eventually mint new public versions while maintaining backwards compatibility.

For an example of this in practice, check out Google's Kubernetes or OpenShift Origin; I work on both and so I have this stuff on the brain lately.

Built a net/http server in proctl/server on top of proctl/DebuggedProcess. This abstracts access to the debugging session. It's not yet websocket based.
Defined a Go client interface in client/client.go which provides Go consumers with an interface to the server. The default implementation uses the net/http library to make server requests.
Changed the responsibility of the dlv command to be:

Start and attach to the process
Spin up the server
Instantiate a Go client to the server
Create a CLI which uses the client to interface with the server (it also gets a pointer to the process for backwards compatibility to allow piecemeal replacement of commands)

Decoupled the CLI (terminal) from the session bootstrapping; the CLI is now able to be incrementally converted to a pure Go client implementation

There's still a ton of work to do:

Finish defining the API
Finish implementing the server interface
Convert the web server to a websockets implementation
Abstract encoding/decoding
Abstract server handling boilerplate
Support public API versioning/conversion
Godocs
API documentation

Other random stuff that could be done:

Take full advantage of websockets by implementing something like syscall.Wait4 or something to allow client breakpoint notification subscriptions.

Have a look and let me know how you feel. If you like the direction, I'd be happy to work on it in my spare time.

@ironcladlou I've looked at the changes you've done and it looks interesting. The ideas you have for how to approach the API are good. However, before you can do that, I believe a separate refactoring of the internals should be done as currently none of the internal commands are returning the output but rather use fmt.Print* directly. I'd be happy to have a look every now and then over the progress but I can't do any sustainable effort to first to the internal changes then implement something on top of them.

@dlsniper

However, before you can do that, I believe a separate refactoring of the internals should be done as currently none of the internal commands are returning the output but rather use fmt.Print* directly.

We might be having a terminology mismatch here. I already changed the command interface and two command implementations (breakpoints and threads) to use the new API client. I think some confusion is coming from the mixed terms at play here.
I have other ideas for how the CLI should be refactored to draw better distinctions (e.g. daemonized server mode, interactive client mode, foreground server/interactive client), but I'd rather discuss those in a PR.

Moving the discussion to #88 to keep this thread clean.

+1, and I'd like to add Idea is the only real IDE... period.

with #88 being closed, I think I can close this one as well. If not, please feel free to reopen this.


using in Android project

I am trying to use Simple-OpenAI on an Android project but I get this error in dexing phase:

Task :app:mergeExtDexDebug FAILED
AGPBI: {"kind":"error","text":"java.lang.NullPointerException","sources":[{"file":"C:\Users\ilker\.gradle\caches\modules-2\files-2.1\org.slf4j\slf4j-simple\2.0.13\be11a3f05f7cf546524b07ad252719d840f4daed\slf4j-simple-2.0.13.jar"}],"tool":"D8"}
AGPBI: {"kind":"error","text":"java.lang.NullPointerException","sources":[{"file":"C:\Users\ilker\.gradle\caches\modules-2\files-2.1\org.slf4j\slf4j-api\2.0.13\80229737f704b121a318bba5d5deacbcf395bc77\slf4j-api-2.0.13.jar"}],"tool":"D8"}

Execution failed for task ':app:mergeExtDexDebug'.

Could not resolve all files for configuration ':app:debugRuntimeClasspath'.
Failed to transform slf4j-simple-2.0.13.jar (org.slf4j:slf4j-simple:2.0.13) to match attributes {artifactType=android-dex, asm-transformed-variant=NONE, dexing-enable-desugaring=true, dexing-enable-jacoco-instrumentation=false, dexing-is-debuggable=true, dexing-min-sdk=27, org.gradle.category=library, org.gradle.libraryelements=jar, org.gradle.status=release, org.gradle.usage=java-runtime}.
Execution failed for DexingNoClasspathTransform: C:\Users\ilker.gradle\caches\modules-2\files-2.1\org.slf4j\slf4j-simple\2.0.13\be11a3f05f7cf546524b07ad252719d840f4daed\slf4j-simple-2.0.13.jar.
Error while dexing.
Failed to transform slf4j-api-2.0.13.jar (org.slf4j:slf4j-api:2.0.13) to match attributes {artifactType=android-dex, asm-transformed-variant=NONE, dexing-enable-desugaring=true, dexing-enable-jacoco-instrumentation=false, dexing-is-debuggable=true, dexing-min-sdk=27, org.gradle.category=library, org.gradle.libraryelements=jar, org.gradle.status=release, org.gradle.usage=java-runtime}.
Execution failed for DexingNoClasspathTransform: C:\Users\ilker.gradle\caches\modules-2\files-2.1\org.slf4j\slf4j-api\2.0.13\80229737f704b121a318bba5d5deacbcf395bc77\slf4j-api-2.0.13.jar.
Error while dexing.

I am not a gradle expert but I understand that gradle can't use the dependency slf4j-simple
Any ideas for a solution ? Or root cause of the issue ?

@ilker-aktuna Thanks for trying simple-openai.
In the discussion https://github.com/sashirestela/simple-openai/discussions/117 you can find an approach to solve your dependency issue with Gradle.
However, you cannot use this library on Android, because Android does not support the Java 11 HttpClient component, a current key component for simple-openai. Researching is necessary to evaluate if I can replace it with another component supported by Android https://github.com/sashirestela/simple-openai/discussions/114

@sashirestela thanks for your quick response.
Actually I already saw that discussion and applied the workaround.
But it did not change the result for me.
Maybe, the problem is different...
I added following block to the end of the android section of my build.gradle

packagingOptions {
    merge "simplelogger.properties"
}

Should it be placed elsewhere ?
Btw, I can adapt my project to use HttpClient if I can solve the issue with dexing..
On the other hand, I am just looking for a simple method to maintain Stream response from openAI for the run request.
Maybe you can guide me to a solution that I can work on. Which library would be good to handle stream response ?
If I can write my own method , I won't need to adapt to your library...

Actually I already saw that discussion and applied the workaround.
But it did not change the result for me.
Maybe, the problem is different...

Maybe you could drop a message to the discussion's author (Bjorn Bringert).

Btw, I can adapt my project to use HttpClient if I can solve the issue with dexing..

That will be awesome, just let me know when you got it.

On the other hand, I am just looking for a simple method to maintain Stream response from openAI for the run request.
Maybe you can guide me to a solution that I can work on. Which library would be good to handle stream response ?

For all the http communication even Stream, I'm using the cleverclient library, however it depends on Java 11 HttpClient.

thank you.
it is also using the same dependency.  and I have the same issue when I use it:

Execution failed for task ':app:mergeExtDexDebug'.

Could not resolve all files for configuration ':app:debugRuntimeClasspath'.
Failed to transform slf4j-simple-2.0.12.jar (org.slf4j:slf4j-simple:2.0.12) to match attributes {artifactType=android-dex, asm-transformed-variant=NONE, dexing-enable-desugaring=true, dexing-enable-jacoco-instrumentation=false, dexing-is-debuggable=true, dexing-min-sdk=27, org.gradle.category=library, org.gradle.libraryelements=jar, org.gradle.status=release, org.gradle.usage=java-runtime}.
Execution failed for DexingNoClasspathTransform: C:\Users\ilker.gradle\caches\modules-2\files-2.1\org.slf4j\slf4j-simple\2.0.12\5fb15030fb6158ef4f63ce4f889f72f4259a7bc3\slf4j-simple-2.0.12.jar.
Error while dexing.
Failed to transform slf4j-api-2.0.12.jar (org.slf4j:slf4j-api:2.0.12) to match attributes {artifactType=android-dex, asm-transformed-variant=NONE, dexing-enable-desugaring=true, dexing-enable-jacoco-instrumentation=false, dexing-is-debuggable=true, dexing-min-sdk=27, org.gradle.category=library, org.gradle.libraryelements=jar, org.gradle.status=release, org.gradle.usage=java-runtime}.
Execution failed for DexingNoClasspathTransform: C:\Users\ilker.gradle\caches\modules-2\files-2.1\org.slf4j\slf4j-api\2.0.12\48f109a2a6d8f446c794f3e3fa0d86df0cdfa312\slf4j-api-2.0.12.jar.
Error while dexing.

I really need to find a solution to this but I can't
seems like nobody else had this issue..

I've asked to ChatGpt and it has some suggestions. Take a look at:
https://chat.openai.com/share/5e804d23-7e9e-4a64-9773-bd694521b9fc

thanks. I've tried them all now without any success.
Probably something very simple (as nobody else has encountered) but I can't see...
I am trying to write my own stream handler now. Would it be possible to do it with HttpUrlConnection like :

private void runThread() {
        Thread thread = new Thread(new Runnable() {

            @Override
            public void run() {
                HttpsURLConnection con = null;
                InputStream is = null;
                try {
                    URL url = new URL("https://api.openai.com/v1/threads/"+threadID+"/runs");
                    con = (HttpsURLConnection) url.openConnection();
                    con.setRequestMethod("POST");
                    con.setConnectTimeout(2000);
                    con.setRequestProperty("Content-Type", "application/json; charset=UTF-8");
                    con.setRequestProperty("Authorization", "Bearer "+APIKEY);
                    con.setRequestProperty("OpenAI-Beta", "assistants=v2");
                    con.setUseCaches (false);
                    con.setDoInput(true);
                    con.setDoOutput(true);
                    JSONObject parent=new JSONObject();
                    parent.put("assistant_id", assistantID);
                    parent.put("stream", true);
                    //parent.put("instructions", "You are a friend. When asked a question, answer friendly. Your name is Amiga.");
                    byte[] postData = parent.toString().getBytes();
                    OutputStream wr = con.getOutputStream();
                    wr.write( postData );
                    wr.flush ();
                    wr.close ();

                    if (con.getErrorStream() != null) {
                        is = con.getErrorStream();
                        BufferedReader rd = new BufferedReader(new InputStreamReader(is));
                        char[] msgsReadArray = new char[5000];
                        int currentCharsCount = 0;
                        int currOffset = 0;
                        int currMsgBytesLength = 0;
                        while ((currentCharsCount = rd.read(msgsReadArray, currOffset , 5000 - currOffset)) != -1 ) {
                            String lastStreamingMsg = new String(msgsReadArray, 0, currMsgBytesLength);
                            Log.d(TAG,"msg:"+lastStreamingMsg);
                            currOffset += currentCharsCount;
                        }
                        /*
                        String line;
                        StringBuffer response = new StringBuffer();
                        while ((line = rd.readLine()) != null) {
                            response.append(line);
                            response.append('\r');
                        }
                        Log.d("000000", response.toString());

                         */
                        rd.close();
                        is.close();
                    } else {
                        is = con.getInputStream();
                        BufferedReader rd = new BufferedReader(new InputStreamReader(is));
                        char[] msgsReadArray = new char[5000];
                        int currentCharsCount = 0;
                        int currOffset = 0;
                        int currMsgBytesLength = 0;
                        while ((currentCharsCount = rd.read(msgsReadArray, currOffset , 5000 - currOffset)) != -1 ) {
                            String lastStreamingMsg = new String(msgsReadArray, 0, currMsgBytesLength);
                            if(lastStreamingMsg.length() >1) {
                                //responseTV.append(lastStreamingMsg);
                                Log.d(TAG, "msg:" + lastStreamingMsg + lastStreamingMsg.length() );
                            }
                            currOffset += currentCharsCount;
                        }
                        rd.close();
                        is.close();

                    }
                } catch (java.net.SocketTimeoutException e) {
                } catch (java.io.IOException e) {
                } catch (Exception e) {
                } finally {
                    try {
                        is.close();
                    } catch (Throwable t) {
                    }
                    try {
                        con.disconnect();
                    } catch (Throwable t) {
                    }
                    //RETURN
                }
            }
        });
        thread.start();
    }


Please add hungaryan diablotorrent.net

Hello!
I tried to add but failed. Hope someone can help.
If you need sign -in of course I will give you.
diablotorrent.net

it has captcha, thus not possible, afaik.

I do not have captcha on login.

@Tracker997
open developer panel in browser, do login and see what was sent. i do have g-recaptcha-response in payload. and in UI.
you can also try to copy that request as curl and run it in terminal/console to see if it works without setting g-recaptcha-response.
if it works for you without captcha in command line (not in browser, but in command line) - then it is possible to login into this tracker via burst.

anyway, for me it says "A reCAPTCHA megerősítés nem sikerült. Kérlek erősítsd meg, hogy nem vagy robot."
and burst is a robot :-)

I understand. I guess therefore no one has integrated into the elementum.


Refactor Path syntax

Review Paths in the project following the comment from @JakubVanek
/* GOOD  */ Paths.get("/tmp", "abcd")
/* BAD:  */ Paths.get("/tmp" + "/" + "abcd")

This is probably not necessary. The only place where this would create problems is Windows and even there, forward slashes work sometimes.


Bug fixes + Provide a way to handle the image errors and use custom image provider

Hi, I made a brand-new changes
but it's simple and not as big as the previous one
Features:

Allow to use custom image provider
Provide a way to handle all the errors of the image widget everywhere even in the preview
Not sure if I add more

My purpose of this pul is to add features but I made some improvements in my way.
Issue #1427
Improvements:

Little code orgnazation

Fix two bugs, the first one when we use
 mediaPickSettingSelector: (context) async {
                  return MediaPickSetting.Camera;
                },

it will always use a pick image by link instead, this is why I prefer using a switch statement instead of if-else since we add more options all the time and we forgot to handle the others

The second bug that will happen when we showCameraButton to true and we set onImagePickCallback but not onVideoPickCallback, then nothing will happen, some developers are not interested in using the camera for both photos and recording videos since they are scenarios when you just want to create simple note app or blog for example and you don't want videos, so throw an error will not be a solution, but the current behavior is not throwing an error so I change it to show only take a photo by the camera option if it set and take a photo by the video if set and the dev can always override this by mediaPickSettingSelector and cameraPickSettingSelector

The way to check HTTP URL for some functions is handled in a more efficient way

Again I'm not sure if I add more improvements but you can always review the changes

Suggestion:
in the flutter_quill_extensions.dart in line 130 in the function List builders
we have quite a lot of configuration for the image, how about making a class that hold all the configurations for each one, for the image, and all the different widgets
Of course, this will require the developers that are overriding the property to update the code of the usage a little bit

@Jon-Salmon please have a look

@Jon-Salmon please have a look

I might make more changes, so you might want to consider keeping this pull request open and not accepting the changes just yet, if possible.

Ok

Ok

I'm adding a new little feature to the desktop which is image resizer support for desktop
but to save some time, can you tell me how to change the width and height of the quill element using the quill controller??
Currently, this logic works only for Mobile:
final res = getEmbedNode(
                              controller,
                              controller.selection.start,
                            );
                            if (base.isMobile()) {
                              final attr = base.replaceStyleString(
                                getImageStyleString(controller),
                                w,
                                h,
                              );
                              controller
                                ..skipRequestKeyboard = true
                                ..formatText(
                                  res.offset,
                                  1,
                                  StyleAttribute(attr),
                                );
                              return;
                            }

I tried and I always get an exception of type String which is 'Apply delta rules failed' which is in
Delta apply(
    RuleType ruleType,
    Document document,
    int index, {
    int? len,
    Object? data,
    Attribute? attribute,
  }) {
    final delta = document.toDelta();
    for (final rule in _customRules + _rules) {
      if (rule.type != ruleType) {
        continue;
      }
      try {
        final result = rule.apply(delta, index,
            len: len, data: data, attribute: attribute);
        if (result != null) {
          return result..trim();
        }
      } catch (e) {
        rethrow;
      }
    }
    throw Exception('Apply delta rules failed');
  }

It's a matter of time until I manage this but to help save some time and make this pull request as closed as possible
if possible, can you tell me how to do it in more detail?? the code of flutter_quill is not documented with comments so I need more time

We can add more logging to help debugging

This indicates no rule is applied at all

Apply delta rules failed means no rule is applied

Apply delta rules failed means no rule is applied

I think I'm able to add this little feature
I just need you to tell me if this is a valid quill delta.
[{insert: {image: /Users/ahmedhnewa/Downloads/example.png}, attributes: {style: width: 412.0; height: 600.0; }}, {insert:
}]

It was style: mobileWidth and mobileHeight and I'm not sure if this applies to the original quill JSON rules but is it okay to store anything in the attributes of the mobileWidth and mobileHeight are not official and extra from this flutter library
but now on desktop, I'm using different attributes which is the width and height key

mobileWidth is our newly defined special key which is not part of the standard quill delta

mobileWidth is our newly defined special key which is not part of the standard quill delta

1- The attributes key, is it official and part of quill delta??
2- Is it okay to define more properties (width, height)

Desktop should follow web I guess

Not really, The web uses  tag, and desktop can't do that without Chromium or webview
web uses the same one on mobile but as I said previously the context menu of macOS was quite buggy so I added an option for the developer to force the use mobile context menu on desktop, however the resizing option was not working so I had to add it only for mobile
in this pull request, I decided to add support for that too
but we were using mobileWidth and mobileHeight for mobile, what about desktop?? should we use something different like normal width and height like the JSON I sent in my previous message
I'm adding support for desktop context menu resizing image
so it will use properties (width, height) instead of mobile ones and this
is only for desktop and doesn't apply for mobile

Ok make sense

@singerdmx
@Jon-Salmon
I know you guys are busy and I have sent pull requests and requested re-reviews too much but you might want to consider re-review the changes again just this time if possible because there are changes made by the others that conflict with this pull request and I had to solve conflicts and commit things to make this project the best it can be with the help of the community, I mean I could squash them but if we're able to get this pull request merged or rejected faster then I will be able to work more on new changes because I do plan to send more pull requests if you don't mind

LGTM

@Jon-Salmon I will go ahead and merge this. You can leave comments when you have time so it will be addressed in next PR


As soon as too heavy to explore it should be restricted

have you encountered this ? it's optimistically updated


chore(package): update registry-mixin to version 2.1.7

https://greenkeeper.io/

Current coverage is 33.05% (diff: 100%)

Merging #44 into master will not change coverage

@@             master        #44   diff @@
==========================================
  Files             1          1
  Lines           121        121
  Methods          34         34
  Messages          0          0
  Branches         10         10
==========================================
  Hits             40         40
  Misses           81         81
  Partials          0          0

Powered by Codecov. Last update c5bf509...17744bb


Unitree LiDAR

Hi, i can this algorithm be used with the Unitree LiDAR? https://www.unitree.com/LiDAR/

I have the same question, i can this algorithm be used with the LIVOX Mid 360 LiDAR?


Scale the marker image according to zoom level

I have added a listener for the zoom event and capture zoom level, however I couldn't get to update the view to make store markers use another marker image (smaller image for zoom level 9 and up).
Is there a way to do this?

This project is in an unmaintained state. I suggest you look at our Google Maps APIs Solutions for currently maintained store locator solutions.


Why not Deployer?

Hi,
What not to use deployer? 😃

Hello Anton
I used your project many times for projects and appreciated it.
He was a model for the creation of Automate.
But I also think the deployment can be very simple: just an order list of command line (no PHP, juste YAML)
Here is the idea of Automate and the reason for this new project :)

Nice, I'm working on yaml support as well.


Build fails on demo found in README

Here's my code:
<template>

View Panel

    <HotTable :root="root" :settings="hotSettings"/>

</template>

Here's my package.json:
{
  "name": "sample_frontend",
  "description": "A Vue.js project",
  "version": "1.0.0",
  "author": "",
  "private": true,
  "scripts": {
    "dev": "cross-env NODE_ENV=development webpack-dev-server --open --hot",
    "build": "cross-env NODE_ENV=production webpack --progress --hide-modules"
  },
  "dependencies": {
    "apollo-client": "^1.9.0-1",
    "graphql-tag": "^2.4.2",
    "vue": "^2.3.3",
    "vue-apollo": "^2.1.0-beta.20",
    "vue-handsontable-official": "^1.0.0"
  },
  "devDependencies": {
    "babel-core": "^6.0.0",
    "babel-loader": "^6.0.0",
    "babel-preset-env": "^1.5.1",
    "babel-preset-es2015": "^6.24.1",
    "cross-env": "^3.0.0",
    "css-loader": "^0.25.0",
    "file-loader": "^0.9.0",
    "node-sass": "^4.5.0",
    "sass-loader": "^5.0.1",
    "vue-loader": "^12.1.0",
    "vue-template-compiler": "^2.3.3",
    "webpack": "^2.6.1",
    "webpack-dev-server": "^2.4.5"
  }
}

Here's my webpack config (generated by vue-cli):
var path = require('path')
var webpack = require('webpack')

module.exports = {
  entry: './src/main.js',
  output: {
    path: path.resolve(__dirname, './static/js'),
    publicPath: '/static/js/',
    filename: 'build.js'
  },
  module: {
    rules: [
      {
        test: /\.vue$/,
        loader: 'vue-loader',
        options: {
          loaders: {
            // Since sass-loader (weirdly) has SCSS as its default parse mode, we map
            // the "scss" and "sass" values for the lang attribute to the right configs here.
            // other preprocessors should work out of the box, no loader config like this necessary.
            'scss': 'vue-style-loader!css-loader!sass-loader',
            'sass': 'vue-style-loader!css-loader!sass-loader?indentedSyntax'
          }
          // other vue-loader options go here
        }
      },
      {
        test: /\.js$/,
        loader: 'babel-loader',
        exclude: /node_modules/
      },
      {
        test: /\.(png|jpg|gif|svg)$/,
        loader: 'file-loader',
        options: {
          name: '[name].[ext]?[hash]'
        }
      }
    ]
  },
  resolve: {
    alias: {
      'vue$': 'vue/dist/vue.esm.js',
    }
  },
  devServer: {
    historyApiFallback: true,
    noInfo: true
  },
  performance: {
    hints: false
  },
  devtool: '#eval-source-map'
}

if (process.env.NODE_ENV === 'production') {
  module.exports.devtool = '#source-map'
  // http://vue-loader.vuejs.org/en/workflow/production.html
  module.exports.plugins = (module.exports.plugins || []).concat([
    new webpack.DefinePlugin({
      'process.env': {
        NODE_ENV: '"production"'
      }
    }),
    new webpack.optimize.UglifyJsPlugin({
      sourceMap: true,
      compress: {
        warnings: false
      }
    }),
    new webpack.LoaderOptionsPlugin({
      minimize: true
    })
  ])
}

When I build my project, I get the following error:
ERROR in build.js from UglifyJs
Unexpected token: name (SettingsMapper) [./~/vue-handsontable-official/src/settingsMapper.js:3,0][build.js:68783,6]

What am I missing?

So it seems that vue-handsontable-official is not doing its own transpiling. Why is this? The transpile should absolutely be handled by the build process here so that Uglify can receive ES5 code from node_modules.
Is this a conscious decision or an oversight?

I too have experienced this problem. And her decision was to move the library to a folder not located in the node_modules.
Most likely the problem is in the configuration of Webpack:
      {
        test: /\.js$/,
        loader: 'babel-loader',
        exclude: /node_modules/
      },

Should
      {
        test: /\.js$/,
        loader: 'babel-loader'
      },

getting the same problem, you guys find a solution?

@JakeAlmer i had the same problem, but solved it.
I am assuming you are using webpack. You need to install the latest version of uglifyjs-webpack-plugin with
npm i -D uglifyjs-webpack-plugin
Then in your webpack config add this at the top of the file (in my case the file was webpack.prod.conf.js)
var UglifyJSPlugin = require('uglifyjs-webpack-plugin')
And then find and replace this
new webpack.optimize.UglifyJsPlugin({       compress: {         warnings: false       },       sourceMap: true     }),
With this
new UglifyJSPlugin({       sourceMap: true     }),
The reason of this problem is that webpack use an old version of uglifyjs-webpack-plugin that doesn't support es6. The latest version of uglifyjs-webpack-plugin support es6 :)
Hope this helps!

After applying these changes, this error still shows up in my configuration.
I'm running vue-handsontable-official version 1.1.0.

We made quite a big refactor of the wrapper structure, so it would be easier to configure.
Could you check if installing it as @handsontable/vue (or @handsontable-pro/vue for the Pro version) fixes your problems?
For more information on how to install it from version 2.0.0-beta1 onwards, see: https://github.com/handsontable/vue-handsontable-official/wiki/Installation-guide

I think we can close this issue.
Feel free to reopen if you find the same bug in v2.0.0-beta1+


Upload Images

[Dependent on #16]
While creating a posting, sellers should be able to upload images to associate with their postings

while editing a posting, a seller can select on or more images to add to their posting
images can be uploaded either through opening a browse dialog or drag/drop into the view
a maximum of 5 images is allowed per posting
an error is displayed to the user if they upload an invalid image

images must be no larger than 500 kB
images must be of type JPG or PNG

when a user selects an image for upload a block is displayed with details and upload progress

details include the filename and size
the upload progress is displayed while the image is uploading

the progress bar is removed when the upload completes
a thumbnail of the image is displayed in the block

users can remove the image at any point

users can re-order images to determine how the images will be displayed on the posting
while images are uploading, the save posting control is disabled

why max of 5 photos?
error message should tell user what the problem is so they can fix it.
upload progress could be nice but I think a block display is unnecessary.

5 image max is slightly arbitrary, but basically because images are large and cost money to store. We basically have to store them forever
I'll edit the post to included error message text
what would an alternative to blocks be? To support things like removing and re-ordering images, it's basically something you get for free. There's a lot of out plugin-and-play modules for file uploads that support it (i.e. FileDrop)

I mean more so for things like file details of size and name. I think it'll end up being more info than people want to see

oh ok, yeah you're probably right in that respect, the blocks can just be previews of the image with a remove control


  Sorry. #4412

No problem.
Looks like Allow edits from maintainers. is not ticked by default


Added "docker push" command

[x] I have read freeCodeCamp's contribution guidelines.
[x] My pull request has a descriptive title (not a vague title like Update index.md)
[x] My pull request targets the master branch of freeCodeCamp.
[x] None of my changes are plagiarized from another source without proper attribution.
[x] My article does not contain shortened URLs or affiliate links.

If your pull request closes a GitHub issue, replace the XXXXX below with the issue number.
Closes #XXXXX

Added a new docker command

Hi,
Thanks for this pull request (PR).
Unfortunately, we are marking this PR invalid for hacktoberfest. We believe it does not follow the recommended guidelines:

Quality Standards
In line with Hacktoberfest value #2 (Quantity is fun, Quality is key), we have provided examples of the quality standards we encourage. This applies mainly to beginners.

PRs that are automated e.g. scripted opening PRs to remove whitespace / optimize images.
PRs that are disruptive e.g. taking someone else's branch/commits and making a PR.
PRs that are regarded by a project maintainer as a hindrance vs. helping.
Something that's clearly an attempt to simply +1 your PR count for October.

Learn more at https://hacktoberfest.digitalocean.com/details


Change AbstractVector to AbstractArray{T,1}

Currently, it is not possible to use slices of a matrix in TaylorDiff because this is not of type AbstractVector (see https://discourse.julialang.org/t/speed-up-compilation-with-zygote-and-pinn/99652/4 where a conversion is needed)
This PR changes the type AbstractVector{N} to AbstractArray{T,1}, allowing the use of subvectors.

@tansongchen
I did not see you replied. Indeed it is, I was incorrect on the source of the error (I worked on an old version of TaylorDiff initially).
The problem with the current code is that x and l must be of same type. This is something I talk about in the other PR: https://github.com/JuliaDiff/TaylorDiff.jl/pull/47


allocator: Consolidate port update logic

There are a number of overlapping places where the ports are compared between s.Endpoint and s.Spec.Endpoint, and possibly updated:

If a service needs allocation, reconcilePortConfigs returns a list of port configs, then serviceAllocatePorts updates the endpoint.
If the service did not need allocation, portsAllocatedInHostPublishMode checks if host-published ports need to be updated.
If portsAllocatedInHostPublishMode returned true, then updatePortsInHostPublishMode has similar logic to update these host-published ports. It doesn't reuse any of the code or results from portsAllocatedInHostPublishMode.

I find these different functions confusing, and we've had bugs before when they behaved inconsistently or weren't correct. It's especially problematic because the host-published-port-specific functions have to avoid interfering with ingress ports.
I think there should be a single function that reconciles s.Endpoint.Ports with s.Endpoint.Spec.Ports. If any ingress ports change, these should be deallocated/allocated as necessary. If nothing at all changes, we should skip updating the service in the store.
I think this will be easier to maintain than separate paths for general port allocation and only updating host-published ports.
cc @aboch @yongtang @abhinandanpb

cc @ijc25

Note that portsAllocatedInHostPublishMode was renamed to hostPublishPortsNeedUpdate.


Fixed e2e-targets bug

@sandersky Self-merging.

Coverage remained the same at 87.4% when pulling 9415fcdef08e1ea8e7a18d1f95aaaf3d9bcd190b on job13er:fix-e2e-targets into 1cb9eb91e7a60fb3e7858ac9539f9fb3eb752223 on cyaninc:master.


Add plasmidfinder and tests

Based on issue #38

This is amazing. I ❤ it. Thanks so much @jennifertran.


Running into issue with .option("kustoAADAuthorityID","72f988bf-86f1-41af-91ab-2d7cd011db47")

We've had an azure databricks notebook which has successfully ran for a while, but couple days ago, it failed at this point:
dfkusto_read_df=(spark.read.format("com.microsoft.kusto.spark.datasource")
.option("kustoCluster",<>)
.option("kustoDatabase",<>)
.option("kustoQuery", kustoquery)
.option("kustoAADClientID",<>)
.option("kustoClientAADClientPassword",dbutils.secrets.get(scope = <>, key = <>))
.option("kustoAADAuthorityID","72f988bf-86f1-41af-91ab-2d7cd011db47")
.option("clientRequestPropertiesJson", crp.toString())
.load())
The error I'm getting is this: com.microsoft.azure.kusto.data.exceptions.DataServiceException: Error in acquiring ApplicationAccessToken
I can work around this by:

commenting out this line: .option("kustoAADAuthorityID","72f988bf-86f1-41af-91ab-2d7cd011db47")
replacing "72f988bf-86f1-41af-91ab-2d7cd011db47" with "microsoft.com" in the same line
replacing "kustoAADAuthorityID" with "KUSTO_AAD_AUTHORITY_ID" (the line would be .option("KUSTO_AAD_AUTHORITY_ID","72f988bf-86f1-41af-91ab-2d7cd011db47")

There have been no library upgrades for our cluster. Other scripts use the same authentication and DO NOT fail.
I know that recently there were changes:

We have this version installed on our cluster: com.microsoft.azure.kusto:spark-kusto-connector:1.0.2
Is there a way to explain these inconsistencies?

hey
If you haven't upgraded the connector than it couldn't have changed ..
KUSTO_AAD_AUTHORITY_ID is the property of the object KustoSourceOptions that is holding the string value : "kustoAADAuthorityID"
please add the error that you get

An error occurred while calling o2981.load.
: com.microsoft.azure.kusto.data.exceptions.DataServiceException: Error in acquiring ApplicationAccessToken
at com.microsoft.azure.kusto.data.AadAuthenticationHelper.acquireToken(AadAuthenticationHelper.java:247)
at com.microsoft.azure.kusto.data.AadAuthenticationHelper.acquireAccessToken(AadAuthenticationHelper.java:90)
at com.microsoft.azure.kusto.data.ClientImpl.initHeaders(ClientImpl.java:142)
at com.microsoft.azure.kusto.data.ClientImpl.execute(ClientImpl.java:89)
at com.microsoft.azure.kusto.data.ClientImpl.execute(ClientImpl.java:50)
at com.microsoft.kusto.spark.utils.KustoDataSourceUtils$.getSchema(KustoDataSourceUtils.scala:87)
at com.microsoft.kusto.spark.datasource.KustoRelation.getSchema(KustoRelation.scala:101)
at com.microsoft.kusto.spark.datasource.KustoRelation.schema(KustoRelation.scala:47)
at org.apache.spark.sql.execution.datasources.DataSource.resolveRelation(DataSource.scala:458)
at org.apache.spark.sql.DataFrameReader.loadV1Source(DataFrameReader.scala:311)
at org.apache.spark.sql.DataFrameReader.load(DataFrameReader.scala:297)
at org.apache.spark.sql.DataFrameReader.load(DataFrameReader.scala:203)
at sun.reflect.GeneratedMethodAccessor849.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at py4j.reflection.MethodInvoker.invoke(MethodInvoker.java:244)
at py4j.reflection.ReflectionEngine.invoke(ReflectionEngine.java:380)
at py4j.Gateway.invoke(Gateway.java:295)
at py4j.commands.AbstractCommand.invokeMethod(AbstractCommand.java:132)
at py4j.commands.CallCommand.execute(CallCommand.java:79)
at py4j.GatewayConnection.run(GatewayConnection.java:251)
at java.lang.Thread.run(Thread.java:748)
Caused by: com.microsoft.azure.kusto.data.exceptions.DataClientException: Error in acquiring ApplicationAccessToken
at com.microsoft.azure.kusto.data.AadAuthenticationHelper.acquireAadApplicationAccessToken(AadAuthenticationHelper.java:142)
at com.microsoft.azure.kusto.data.AadAuthenticationHelper.acquireToken(AadAuthenticationHelper.java:231)
... 21 more
Caused by: java.util.concurrent.ExecutionException: com.microsoft.aad.adal4j.AuthenticationException: {"error_description":"AADSTS7000215: Invalid client secret is provided.\r\nTrace ID: 0151fff4-9b05-4448-a779-e46b0c917d00\r\nCorrelation ID: 120ac7d4-5c8b-43d1-9d8c-e6e8c54c3ef4\r\nTimestamp: 2020-08-07 23:08:27Z","error":"invalid_client","error_uri":"https://login.microsoftonline.com/error?code=7000215"}
at java.util.concurrent.FutureTask.report(FutureTask.java:122)
at java.util.concurrent.FutureTask.get(FutureTask.java:192)
at com.microsoft.azure.kusto.data.AadAuthenticationHelper.acquireAadApplicationAccessToken(AadAuthenticationHelper.java:140)
... 22 more
Caused by: com.microsoft.aad.adal4j.AuthenticationException: {"error_description":"AADSTS7000215: Invalid client secret is provided.\r\nTrace ID: 0151fff4-9b05-4448-a779-e46b0c917d00\r\nCorrelation ID: 120ac7d4-5c8b-43d1-9d8c-e6e8c54c3ef4\r\nTimestamp: 2020-08-07 23:08:27Z","error":"invalid_client","error_uri":"https://login.microsoftonline.com/error?code=7000215"}
at com.microsoft.aad.adal4j.AdalTokenRequest.executeOAuthRequestAndProcessResponse(AdalTokenRequest.java:128)
at com.microsoft.aad.adal4j.AuthenticationContext.acquireTokenCommon(AuthenticationContext.java:928)
at com.microsoft.aad.adal4j.AcquireTokenCallable.execute(AcquireTokenCallable.java:70)
at com.microsoft.aad.adal4j.AcquireTokenCallable.execute(AcquireTokenCallable.java:38)
at com.microsoft.aad.adal4j.AdalCallable.call(AdalCallable.java:47)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
... 1 more

I compared one of the successful scripts with this one, and the only difference I see is that this one (failing one) uses this:
crp = sc._jvm.com.microsoft.azure.kusto.data.ClientRequestProperties()
I noticed that https://github.com/Azure/azure-kusto-spark/releases notes for v2.0.0 have this part:

Could this be it?
We also updated the service principal secret that we are using -- but it is updated in the scoped keyvault as well and that wouldn't explain why other scripts succeed and why this one succeeds if we use "KUSTO_AAD_AUTHORITY_ID" instead of "kustoAADAuthorityID" or "microsoft.com" instead of guid.

as i said it cant be it as u havent updated the client
The error states that the client secret is invalid - meaning that the tenant you provided is correct - the application was found for authentication and only the secret is wrong - please check its value
btw when u used "KUSTO_AAD_AUTHORITY_ID" as a string the connector couldnt find it and used its default - microsoft.com

The secret is pulled from keyvault -- and if it was invalid, wouldn't default "microsoft.com" also fail?
As I said, this happened soon after the secret was updated for service principal, so this was first thing I checked. Keyvault contains the new version; it is also used by other scripts, which do not fail.

hey
if you want we can have a call on teams although i'm pretty sure the problem is not from the connector's side, its really weird that authenticating with "microsoft.com" has different results from "72f988bf-86f1-41af-91ab-2d7cd011db47" - i would debug this locally if you can - just use our java sdk library (https://github.com/Azure/azure-kusto-java) which we use here for authentication, quering and ingestion.


Default group

Closes #177

When this is merged, I will start working on Proxy Header authentication.

When this is merged, I will start working on Proxy Header authentication.

I have to code ready for this as well. Will make a PR when this is merged, since it's based on this.

I'm back and forth between this being a setting, or if there should be a default flag on the group model itself. If we do it the way you have it now, then there would need to be an additional check to make sure the group exists (in case the default group was deleted).
If we put it on the group model, then we could query directly for the default group. There would need to be additional logic when setting the default group to make sure we don't have multiple, but I think that's fine. Then the flag would live on the group settings page, and it can be displayed in the group table as well.

As for  your PR on proxy auth, can you open a separate feature request for that? I want to discuss it

As for your PR on proxy auth, can you open a separate feature request for that? I want to discuss it

Opened in #180

I've committed a change that prevents the deletion of the default group. Since there can only be one default group, I believe the best approach is to store it globally and allow changes through the global settings. Additionally, I want to display the default group in the group table.

Cool, I think that's appropriate. Functionality is good! I'm going to merge another PR which will cause some conflicts on this branch, just FYI

I have resolved the conflicts

It should be fixed now

I have now fixed the lint check


Tbody in Column component

Hi Guys!
I just want to ask about Column component. It has a  tag. Because of that, when I put Column in Section component error validateDOMNesting(...):
 cannot appear as a child of
. appears. Components structure look like this:

          <Column style={{ width: '30%' }}>
              <Text>Column 1</Text>
            </Column>
            <Column style={{ width: '70%' }}>
              <Text>Column 2</Text>
            </Column>

And after render to string, html is invalid because all columns move to  of .
What is structure should be? What did I do wrong with these components?

Hey @cassiorsfreitas, can you check this one?

@nobodywithbody Thanks for opening the issue, we're looking into this. Currently, the Column component doesn't respect the HTML structure as it tries to add a tbody inside of tr for example. Where it needs to be inside a table.

@zenorocha Thanks for quick response and for this good lib! Can you suggest some proper way to make columns instead of using Column component?

@zenorocha Thanks for quick response and for this good lib! Can you suggest some proper way to make columns instead of using Column component?

You can try using with a div or table for now until we release a new version with the fix.

Guys, i've been doing some changes regarding these two components (Column and Section).
These components are pretty much linked, right? I mean, there's no way to think in rows (vertical divisions) without thinking in columns (horizontal divisions) when we're talking about tables.
So, fully independently implementing these components doesn't sound good to me. The Column component is responsible for creating td columns inside the Section component that creates tr lines.

    <Column></Column>
    <Column></Column>
    <Column></Column>

I also added a style that organizes, centers and assigns the same width to all columns inserted in the section. In other words, users don't need to worry about it, but can change it if they want.
HTML static example:
https://codesandbox.io/s/section-and-column-example-lic7bh?file=/index.html


feat(ui): rgb colors support

Fixes #78
Preview:

Oh - I saw it, but I assumed that since it was in vue, it didn't affect the MQTT transport.
Looking forward to that :)

Oh - I saw it, but I assumed that since it was in vue, it didn't affect the MQTT transport.
Looking forward to that :)

Pull Request Test Coverage Report for Build 493670932

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 23.603%

Totals

Change from base Build 493668561:
0.0%

Covered Lines:
1957

Relevant Lines:
8470

💛  - Coveralls

Pull Request Test Coverage Report for Build 493670932

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 23.603%

Totals

Change from base Build 493668561:
0.0%

Covered Lines:
1957

Relevant Lines:
8470

💛  - Coveralls


feat: don't add configmap volumemounts in wait container. Partial fix for #13089

Fixes point 2 of https://github.com/argoproj/argo-workflows/issues/13089

Do you mean the ConfigMap named argo-env-config?

Do you mean the ConfigMap named argo-env-config?
https://github.com/argoproj/argo-workflows/blob/5be8cbfe612ef49cdccb86068df79098d2198b8c/workflow/controller/workflowpod.go#L488-L497

@jswxstw i mean to exclude user configmaps like somecode.py they choose to mount, of which there could be several different ones mounted

@jswxstw i mean to exclude user configmaps like somecode.py they choose to mount, of which there could be several different ones mounted

You should write the PR description more clearly, otherwise we won't know why and how you actually do.

who gon merge dis

can u merge dis @tczhao


chore(book): Frames to Batches Example

Description
Adds an example for transforming Frames into Batches.

📚 $\text{Stack Overview}$
Pulls submitted in this stack:

#232 👈
main

This comment was automatically generated by st.


Add build script to scripts folder

Security is missing build.sh under scripts folder which is preventing it from getting published to maven.

Hey @DarshitChanpura you can leverage the existing build flow.


Kryo: Annotate kryo as Experimental.

Annotate kryo as Experimental

Follow this checklist to help us incorporate your contribution quickly and easily:

[ ] Format the pull request title like [BEAM-XXX] Fixes bug in ApproximateQuantiles, where you replace BEAM-XXX with the appropriate JIRA issue, if applicable. This will automatically link the pull request to the issue.
[ ] If this contribution is large, please file an Apache Individual Contributor License Agreement.

It will help us expedite review of your Pull Request if you tag someone (e.g. @username) to look at it.
Post-Commit Tests Status (on master branch)

Lang
SDK
Apex
Dataflow
Flink
Gearpump
Samza
Spark

Go

---
---
---
---
---
---

Java

Python

---

---
---
---

Please self merge when green @dmvk