3rd party static libraries

We need to support static libraries added in a NativeScript for iOS project.
One of the use cases is adopting existing codebase that is not available in source form.
We had request for the MagTek hardware support. They do distribute officially a static library.
We are not certain for implementation:

Ideally the NativeScript users will use a library add like command with the lib*.a file, point the headers that declare the exposed APIs and provide additional flags if necessary. Since static libraries does not declare their dependencies the developers may also need to resolve them.
As an alternative we can let the clients set up the Xcode project and link the library themselves as well as set header search paths, and we can try to simply generate metadata for these headers and expect that the static libraries are setup properly.
We can also investigate if we can provide tooling to wrap static libraries in shared frameworks that work with the already existing tooling.

Create small examples using:

[x] Static Library
[x] Static Framework - #141
[x] Cocoa pods example - #144
[x] Consume Objective-C Code in the Project - #145

Also we should keep an eye on this issue, and try to satisfy its prerequisites. (pods for example)
Add out of the box support for:

[ ] Consuming Objective-C Code in the Project - #146
[x] Static Framework added through Plugins
[ ] Write an article how to wrap static library into a framework - #147
[x] Cocoa pods added through Plugins - #94

News/Rumors
Google is embracing CocoaPods to bring its services to iOS developers

We also need to take care of symbol stripping.

Hi Pana,
We have a similiar request for Honeywell Captuvo Sled hardware, please see following link for more info.
https://www.honeywellaidc.com/Captuvo/software/CaptuvoSDK_2.19.742.zip
we require following to use
/SDK/Include/Captuvo.h
/SDK/Lib/libCaptuvoSDK.a
and
ExternalAccessory.framework
Should you require any more info, please let me know.

We have received a question about firebase:
https://www.firebase.com/docs/ios/
It looks like it is distributed as a static iOS framework (similar to the NativeScript.framework).
The framework contains the tree:
$ tree Firebase.framework
Firebase.framework
├── Firebase
├── Headers
└── Versions
    ├── A
    │   ├── Firebase
    │   └── Headers
    │       ├── FAuthData.h
    │       ├── FAuthType.h
    │       ├── FDataSnapshot.h
    │       ├── FEventType.h
    │       ├── FMutableData.h
    │       ├── FQuery.h
    │       ├── FTransactionResult.h
    │       ├── Firebase.h
    │       └── FirebaseServerValue.h
    └── Current

The Firebase.h looks like an umbrella header.  What is the difference between static and dynamic that makes NativeScript not being able to handle the static ones? just curiosity to learn how things are working.

Shared frameworks

Can be used in iOS8+
Have information about their dependencies
Are linked dynamically and need to be signed just like the app executable
Can be shared across extensions
Are not so popular

Static frameworks

Are linked statically.
Some C symbols are stripped and can not be used dynamically from JavaScript.
Dependencies must be provided by hand. (e.g. SQLite)
For static libraries (if not grouped in a framework) headers must be provided by hand.
Are overall harder to integrate automatically

NativeScript for iOS does support static libraries and frameworks internally. The problem is that the generation of metadata, additional flags, linking problems etc. made the shared frameworks a better candidate to be officially supported for v1.
Static frameworks and libraries and scheduled for v1.1 and will come along with a packaging mechanism. The additional dependencies and flags will probably be expressed in a package.json.
Meanwhile any additional use cases for static libraries are welcomed, since there are multiple ways they are currently distributed.

Here is the Google Maps SDK for iOS static framework. Its pretty much the same as the Firebase.

Thanks for the comments @PanayotCankov !

We have a Cocoa Pods request here.

It only seems convenient to ask the users wrap static libraries that go with headers in a framework.
For example in case you have the libMyLibrary.a and a few headers that go with it (like the MagTek request) you can wrap it as:
MyLibrary.framework
├── MyLibrary <- libMyLibrary.a with the "lib" prefix and ".a" extension stripped
└── Headers
    ├── MyLibrary.h <- An umbrella header that eventually includes ClassA.h and ClassB.h
    ├── ClassA.h
    └── ClassB.h

In any case it seems more convenient to use this convention rather than inventing a home made package.json configuration.

We have a user for the Facebook API
As a side-note: the API requires you to plug some of their callbacks in the AppDelegate.

@PanayotCankov What is the current thinking about those callbacks in the AppDelegate? The same problem goes for Push Notifications as well.

@ligaz Perhaps the AppDelegate created by our application module should raise iOS-specific events, or provide a hooking mechanism of some sort, so that workflows that need to plug into the AppDelegate can be implemented. Of course, if a developer is not using our application module, then they need to create the AppDelegate class themselves and that leaves them free to plug callbacks any way they wish.

As a solution of last resort we support method swizzling, you can swizzle the methods on TNSAppDelegate from the "application" module, however we do not recommend it as its quite fragile.
It would be best to use events for these and allow developers to assign the framework handlers. There are already some events exposed, check the application-common.js:
exports.onUncaughtError = undefined;
exports.onLaunch = undefined;
exports.onSuspend = undefined;
exports.onResume = undefined;
exports.onExit = undefined;
exports.onLowMemory = undefined;

However they are platform agnostic and I think we do not expose the native arguments. For example the onLaunch is invoked in applicationDidFinishLaunchingWithOptions, however the iOS application and launchingOptions are not provided as arguments:
    TNSAppDelegate.prototype.applicationDidFinishLaunchingWithOptions = function (application, launchOptions) {
        this.window = Window.alloc().initWithFrame(UIScreen.mainScreen().bounds);
        this.window.backgroundColor = UIColor.whiteColor();
        if (exports.onLaunch) {
            exports.onLaunch();
        }
        // .....
        return true;
    };

I'm a Javascript developer not familiar at all about so-called "static libraries or frameworks" for the native OS's. I also understand this issue tracker is for iOS stuff.
But what about support for static libraries/frameworks for Android? Should there be such a thing? Is there even such a thing at all as a "static library/framework for Android"?

3rd party static libraries can be consumed through linker flags in the xcconfig along with providing a module map for the header files of these libraries.

Hi, I understand this issue is closed, but I'm unable to successfully create a plugin with a static library. Is there a specific directory structure that's required? I feel like this doc comes short of giving a full example. Any help here would be appreciated.

@vijaysharm You may find this comment helpful.


Allow to change the default _templates directory on hygen init

Ref #380

Any idea of the best way to write tests for this feature @jondot ? I don't the meta verse thing 😅.
Thanks in advance

Thanks, I'll try this out myself and see how to best test it, for now, the ball is on my end 🏀  😃

Any update on this? I'd love so see this feature as well. 😀🙏


Computer Vision Client PDF read_in_stream function not returning result

Please provide us with the following information:

This issue is for a: (mark with an x)
- [x] bug report -> please search issues before submitting
- [ ] feature request
- [x] documentation issue or request
- [ ] regression (a behavior that used to work and stopped in a new release)

Minimal steps to reproduce

Trying to analyze a PDF using ComputerVisionClient but function batch_read_file_in_stream not there in latest 0.6 package. So I read Release History and saw the addition of read_in_stream and get_read_result . So I grabbed some code I found in Azure Repo and tried it with the new functions but the result just hangs in 'running....' . Asking for help to setup the correct code structure to read PDFs and get text out as_dict(). Thanks!

Tried this on 0.6.0 and it just stays on running....
def pdf_text():
    # pdf
    filepath = open("pdfs/sample.pdf", "rb")

    # Async SDK call that "reads" the image
    response = client.read_in_stream(filepath, raw=True)

    # Don't forget to close the file
    filepath.close()

    # Get ID from returned headers
    operation_location = response.headers["Operation-Location"]
    operation_id = operation_location.split("/")[-1]

    # SDK call that gets what is read
    while True:
        result = client.get_read_result(operation_id)
        if result.status not in ['NotStarted', 'Running']:
            break
        time.sleep(1)
    return result

result = pdf_text()

result.as_dict()
> {'status': 'running', 'created_date_time': '2020-08-05T21:36:15Z', 'last_updated_date_time': '2020-08-05T21:36:15Z'}

Any log messages given by the failure

The result never returns. Help setting it up correctly.

Expected/desired behavior

Expected result is to analyze a PDF using a stream of bytes.

OS and Version?

Using Windows 10 + WSL
python 3.7.7

Versions

Ubuntu 18.04LTS

Mention any other details that might be useful
Also want to add:
def pdf_text_04():
    # Images PDF with text

    with open("pdfs/sample.pdf", "rb") as image_stream:
        job = client.batch_read_file_in_stream(
            image_stream,
            raw=True
        )

    # Get ID from returned headers
    operation_location = job.headers["Operation-Location"]
    operation_id = operation_location.split("/")[-1]

    print(operation_location)

    # SDK call that gets what is read

    result = client.get_read_operation_result(operation_id)

    while result.status in ['NotStarted', 'Running']:
        time.sleep(1)
        result = client.get_read_operation_result(operation_id)
    return result

edit : This code works on 0.4.0 version of package but still would like to know how it works on 0.6.0. Thanks!

Thanks! We'll be in touch soon.

Figured it out. The result.status message is actually lowercase running and notStarted in 0.6.0. Closing. Thanks!


nixos/nextcloud: avoid loading imagick extension more than once

Motivation for this change
Part of the PHP configuration is duplicated because the contents of the variable phpOptionsExtensions is already part of phpOptionsStr.
This causes lots of errors and warnings like the following:
Module 'imagick' already loaded at Unknown#0

Things done

[ ] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[ ] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

@GrahamcOfBorg test nexcloud.basic

Backported as 2bdd1f3a8d615cb706d923f2b8a8db1ac2b9278c ; as the issue also showed up on 20.03


Remove HugeCTR examples

resolves #969

Before we merge, we need confirmation from product, that we can remove.

@radekosmulski @bschifferer Are we good to go with removing these or still waiting?


feature support SELECT * EXCEPT

Proposed changes
Issue Number: close #13843
Problem summary
Support SELECT * EXCEPT syntax.
Checklist(Required)

Does it affect the original behavior:

[ ] Yes
[x] No
[ ] I don't know

Has unit tests been added:

[x] Yes
[ ] No
[ ] No Need

Has document been added or modified:

[x] Yes
[ ] No
[ ] No Need

Does it need to update dependencies:

[ ] Yes
[x] No

Are there any changes that cannot be rolled back:

[ ] Yes (If Yes, please explain WHY)
[x] No

Further comments
If this is a relatively large or complex change, kick off the discussion at<EMAIL_ADDRESS>by explaining why you chose the solution you did and what alternatives you considered, etc...

Please add regression test

Done.

TeamCity pipeline, clickbench performance test result:
the sum of best hot time: 38.13 seconds
load time: 567 seconds
storage size:<PHONE_NUMBER>1 Bytes
https://doris-community-test-1308700295.cos.ap-hongkong.myqcloud.com/tmp/20221031195218_clickbench_pr_36912.html


Feature/notice viorec

Updated PR #209 with this. Yarn lock removed

Will update PR and reopen

Changed OrgOwner code line update PR
const orgOwner = propertyArr.owners.find(item => !!item.isPrimaryOwner)
In files - Notice-violation.js, Notice-recovry.js, noticetabnoticepreview.js


Saleor-sdk for Vue

This plugin is not compatible with a Vue.js project.
Is there any other alternative or support through which we can use this functionality in a Vue Project?

Hi,
I'm building a pretty big ecommerce with Saleor and Nuxt.
You need to include the Saleor client as plugin.
After that you can use both SDK's methods and Apollo Client.
Regards,
Davide

Hey Marchet,
It would be great if you share the example code. So that I can get an idea.
Thank you.
Best regards,
M.Salman Tayyab

Hi!
I'm very happy you call me by my surname like my friends at the bar! :D
Sounds very italian :D
Btw as I said I've do it for Nuxt and maybe, in the future, I plan to make a small package for Vue.
I make a file called saleor.js in plugin folder and I Installed it as global plugin (it works both client and server side).
This is the plugin (saleor.js) with some comments to explain:
// Import Saleor SDK
import { SaleorManager } from '@saleor/sdk'

// Setup your credentials
const config = {
  apiUrl: process.env.NUXT_ENV_GQL_URL_SALEOR,
  channel: process.env.NUXT_ENV_CHANNEL_SALEOR,
}

// If you need to config Apollo use this object (If you want to change the cache policy for example)
const apolloConfig = {}

// This is my trick to avoid to use Saleor in client side before it's loaded
// I setup a promise and I wait while cart and checkout have status `loaded === true`  (If they add a hook or method for this could be fantastic)
const initSaleorApi = (api) => {
  return new Promise((resolve) => {
    const loader = () => {
      if (!api.cart.loaded && !api.checkout.loaded) {
        window.requestAnimationFrame(loader)
      } else {
        return resolve()
      }
    }
    window.requestAnimationFrame(loader)
  })
}

// I make a plugin for Nuxt but you can easily switch to a Vue base plugin
export default async (context, inject) => {

  // Create the Saleor instance
  const manager = new SaleorManager(config, apolloConfig)
  const { api, apolloClient } = await manager.connect()

  // in Vue you can add an instance method doing something like Vue.prototype.$saleor = api
  // At this point you have access to categories, collection and products but not cart ad checkout
  inject('saleor', api)
  inject('apolloSaleor', apolloClient)

  // Cart and checkout work in client side
  // Before using them I wait the promise declared above and after that I can use cart and checkout in client side mode
  if (process.client) {
    await initSaleorApi(api)
  }
}

I hope it can be helpful!
Regards,
Davide

Thanks you :)


If you're moving classes to different package, please write in release notes as "Breaking Changes"

Lost 2-3 hours fixing compilation errors and importing new packages. :(

Will do, thanks


Added SWISH to PaymentMethodType

This closes issue #99

I will be honest and say that I haven't tested this. But based on the error message I will say this should fix the issue we have.

Thanks @Sebbe. Will include this with the next release.

Thanks @frederikvig
When will next release be?

@Sebbe Plan is September, unfortunately no exact date yet.

I created a new release (3.5.4) for it now and uploaded it to https://nuget.optimizely.com/. They usually approve the packages within 24 hours.


Events Page Button Focus is incorrect color

Should be a color related to the theme.

Fixed in Events Update


fix: Ensure year is always 4 digits

Because of this issue in CPython on some platform the dates having a year smaller than 1000 will be on less than 4 digits.
format_datetime(datetime(200, 1, 1)) # 200-01-01T00:00:00Z

This PR make sure that the year is always formatted with 4 digits:
format_datetime(datetime(200, 1, 1)) # 0200-01-01T00:00:00Z

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.


Sample for Active Directory

Any sample showing how to leverage Active Directory with IDSRV4?
Thanks in advance.

not yet.

Ok, so consider this a formal request for a such sample.
Also any indication by when you can make it available would be very appreciated.

OK. noted.
Feel free to do your own investigations as well.

I'm performing some tests with Azure Ad with Identity Server 4 and a MVC Client. I use OpenIdConnect to configure Ids with Azure. The only problem, I have frequently this error in Azure Login page : "Passed query string length exceeds supported limit." I noticed that the nonce parameter it's 2 times longer than directly by a direct login with Identity Server? Is it a issue or a normal behavior?

@evertefeuille https://github.com/aspnet/Security/issues/978

@brockallen  Thank you!

@brockallen @evertefeuille I've uploaded a sample project that shows how to configure Identity Server with Azure AD.  It also includes the custom StateDataFormat that I used to resolve aspnet/Security#978.
https://github.com/mclark1129/IdentityServer4.Samples/tree/master/AzureAd_CustomStateDataFormat

@mclark1129 Thanks!!

@mclark1129 Great effort!
I seem to be having a little bit of problems getting your sample to work. I did get the clientId and the tenantId set to match those of our Azure AD, and got all the way to the requesting of the use of AD resources.
Once I give the concent for the app to use data from the AD, the sign-in gives an error though:
AADSTS50012: Authentication failed.
Do I need to set something else to get the sample to run? Sorry if this is a dumb question. I'm just starting to learn both IdentityServer as well as Azure AD.
Thanks in advance!

@mclark1129 thanks for the sample!
@mrtaunus open an issue with @mclark1129's repo please.


fix(clickable-tile): add rel prop

Adds the ability to add a rel value to the clickable tile
related to building out Gatsby site, google lighthouse recommends rel="noopener on links opening in a new window

Would we want to keep just the prop type? In this way consumers know that it’s supported, the type is checked, but don’t need any additional (our) code to copy the prop value to the inner-node. What do you think?

@asudoh updated to just have prop type

done @joshblack 😸

You rock! 🙏

thanks for keeping us accountable 😉 @joshblack


Deployment Slots Issue

Repro steps:
Tray to create a new deployment slot.
Same error when i expand the "Deplyoment Slots" Node in the tree-view
Action: appService.CreateSlot
Error type: ArgumentError
Error Message: Invalid Object.
Version: 0.9.0
OS: win32

Closing as duplicate of https://github.com/Microsoft/vscode-azureappservice/issues/564


Big Linking: avoiding in-memory load for sample generation?

Unless I am mistaken, all the database examples (including address-matching and dedupe-geocoder) load the entire files in memory to generate samples to label.
For example:  dict((i, row) for i, row in enumerate(cur)) : https://github.com/datamade/dedupe-examples/blob/master/pgsql_big_dedupe_example/pgsql_big_dedupe_example.py#L121
In my case the canonical file is a 1GB csv file and my RAM fills up before I can load the file.
Do you have code to link (Gazetteer) large files without having to load the entire file in memory (even for sample generation)?
Otherwise, do you think doing sample generation using only a subset of the canonical file would work and what implications would that have?

Take a random sample of the records, make a dictionary of those and pass
them to sample, You'll also need to use the original_length argument
On Fri, Apr 14, 2017 at 6:25 AM, Leobouloc<EMAIL_ADDRESS>wrote:

Unless I am mistaken, all the database examples (including
address-matching
https://github.com/datamade/address-matching/tree/sqlclass and
dedupe-geocoder https://github.com/datamade/dedupe-geocoder) load the
entire files in memory to generate samples to label.
For example: dict((i, row) for i, row in enumerate(cur)) :
https://github.com/datamade/dedupe-examples/blob/master/
pgsql_big_dedupe_example/pgsql_big_dedupe_example.py#L121
In my case the canonical file is a 1GB csv file and my RAM fills up before
I can load the file.
Do you have code to link (Gazetteer) large files without having to load
the entire file in memory (even for sample generation)?
Otherwise, do you think doing sample generation using only a subset of the
canonical file would work and what implications would that have?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/datamade/dedupe-examples/issues/48, or mute the
thread
https://github.com/notifications/unsubscribe-auth/AAgxbUDF4oNONdoaj6ug-2BmVlyqZm1dks5rv1eugaJpZM4M9rB-
.

--
773.888.2718

https://dedupe.readthedocs.io/en/latest/API-documentation.html#Dedupe.sample

I had missed that. Thank you !


Big materialized views lock rake db:migrate

This times out our CI, is there any better way to do this?

Sounds like you could improve performance by indexing the underlying table/s to make the view's query faster, by only returning necessary columns if you're selecting a bunch of things, by using CTE to do heavy lifting, etc.


Anchor Js/Ts Clients Broken With Change To C Representation For ZeroCopy Accounts

Overview
Previous code that was correctly able to fetch zerocopy accounts no longer works, or incorrectly parses accounts returning bad data. This issue is strictly related to the way the idl is either generated, or the js/ts clients interpret the idl, as parsing the account on-chain, and via rust code works.
When the account is unable to be parsed the error message is along the lines of the following, with the number 179 sometimes being different.
     Error: Invalid bool: 179
      at WrappedLayout.decodeBool [as decoder] (node_modules/@project-serum/borsh/src/index.ts:169:9)
      at WrappedLayout.decode (node_modules/@project-serum/borsh/src/index.ts:92:17)
      at Structure.decode (node_modules/buffer-layout/lib/Layout.js:1234:32)
      at Structure.decode (node_modules/buffer-layout/lib/Layout.js:1234:32)
      at AccountsCoder.decode (node_modules/@project-serum/anchor/src/coder/accounts.ts:53:19)
      at AccountClient.fetchNullable (node_modules/@project-serum/anchor/src/program/namespace/account.ts:153:33)
      at runMicrotasks (<anonymous>)
      at processTicksAndRejections (node:internal/process/task_queues:96:5)
      at AccountClient.fetch (node_modules/@project-serum/anchor/src/program/namespace/account.ts:165:18)

In the case of bad data being returned, a number such as 200000 being stored in a u64 field is returned as<PHONE_NUMBER>3358019584.

Does your type contain padding bytes? Zero copy types shouldn't contain any.https://docs.rs/bytemuck/latest/bytemuck/trait.Pod.html#safety.

Yea I think that's it. What kind of alignment is uses, 64bit ?

Ah silly me the alignment was from the 2 u8. Thanks!


Fix link to framework page in zh-cn and add frameworks page for zh-cn…

Fix link to framework page in zh-cn and add frameworks page for zh-cn/resources/frameworks.html

Thanks @ibelem


[chore] - chore(UX): impacted assistant datasource

Description
This PR aims at displaying how many assistants use a given data source (website or folder).
This is based on the following task: https://github.com/dust-tt/tasks/issues/849
See screenshots below:

Risk
Deploy Plan

@spolu sorry first draft was messy, got a bit confused by two tasks that I tried to tackle at once 🙏🏼


Cannot decrypt the password

Pass-winmenu cannot find the secret key to decrypt the passwords

You must edit the pass-winmenu.yaml.
Write on the cmd where.exe gpg and copy the path on gpg-path: '[path]'.
gnupghome-override should be C:\Users\<YourUsername>\AppData\Roaming\gnupg\ .
This worked for me.

Yeah windows likes to keep things in weird places so I think they're both in different places a lot of the time.
P.S. feel free to close the issue if you don't need any more help :pray:


[VL] Rss use row-based sort

@kerwin-zk Could you help to check whether this patch could work? Besides, I noticed it requires some extra configurations to be set for celeborn. Here's what I found and please help to check if there are anything else needed to fully enable sort-based shuffle with celeborn. Thanks!
--conf spark.shuffle.manager=celeborn \
--conf spark.celeborn.client.spark.shuffle.writer=sort \
--conf spark.celeborn.client.shuffle.compression.codec=zstd

cc: @FelixYBW

@kerwin-zk Could you help to check whether this patch could work? Besides, I noticed it requires some extra configurations to be set for celeborn. Here's what I found and please help to check if there are anything else needed to fully enable sort-based shuffle with celeborn. Thanks!
--conf spark.shuffle.manager=celeborn \
--conf spark.celeborn.client.spark.shuffle.writer=sort \
--conf spark.celeborn.client.shuffle.compression.codec=zstd

cc: @FelixYBW

@marin-ma I'll try to test it first.

--conf spark.shuffle.manager=celeborn
--conf spark.celeborn.client.spark.shuffle.writer=sort

@FelixYBW @marin-ma I haven't tested row-based sort + Celeborn yet. For columnar-based sort + Celeborn, the following settings are needed:
spark.shuffle.manager: org.apache.spark.shuffle.gluten.celeborn.CelebornShuffleManager
spark.celeborn.master.endpoints: master-1-1:9097
spark.shuffle.service.enabled: false
spark.celeborn.client.spark.push.sort.memory.threshold: 128m
spark.celeborn.client.spark.shuffle.writer: sort
spark.celeborn.client.shuffle.compression.codec: none
spark.sql.adaptive.localShuffleReader.enabled: false

@floesing_pins you may take a look of this. You may set spark.gluten.sql.columnar.shuffle.sort.partitions.threshold=4000
@jingyuanzhang_pins FYI.

fiele isSort of VeloxCelebornColumnarShuffleWriter need update


Add ByteArray support for fs module

Closes #35
Make sure to merge https://github.com/suparngp/kotlin-multiplatform-projects/pull/34 before this.

This one looks good overall. I ll quickly review it after merging the original PR for JVM.

Rebased and added the suggested changes.


DNS serialization fixes

In attempting to port some code to use gopacket, I noticed some errors and gaps in the DNS packet encoding. Here are some fixes for them.

Hi.
Would sign the CLA?
Is this duplicated with PR #199?
Laurent

I'm awaiting approval from my employer on the CLA. It does appear that some of these issues would be fixed by #199, though I also implemented some additional record types.

Any news @jdknezek ?

So sorry for the delay... I finally have verbal approval and have submitted the corporate CLA to our authorized signer. I'll comment as soon as it's signed.

Whew, the CLA has finally been signed. It should be signed as the corporation "AmpThink".

Just as a double check : is the git commits log included your company name and email ? If I understand correctly(I am not a CLA expert nor a Google employee) that's required.

Quick ping on this.  Is there currently anything stopping this merge?

It's the CLA I think, the following commits have an author of<EMAIL_ADDRESS>5a08e8b3283cd0bc00e9e631cfe6168971e35423
214982a0b64d139a2cb2fffa2db0fd614b035527
04fbcd74e029b4f6fd2818fb4eb9257e9b184e28
36a3fefb479cec811a433d90832dee1fbb11b6be
cad097cb76ffcf48ffd16723ed86862581e80e17
While these two have an author of<EMAIL_ADDRESS>da71b7ee7c5e091695e05f865f8230491f553da1
6647fddc095a0ec046eae60b9c9ec0e54d616927
@jdknezek, to fix it in your dns-fixes branch:
git rebase -i -p f4807986c9ee46845a35c59a382d6ccd9304b320
# In the editor, replace 'pick' with 'edit' in each of the first five lines

# Then, for each edit commit (total of five times) run:
git commit --amend --author "Jonathan Knezek<EMAIL_ADDRESS>git rebase --continue

# Finally push the rewritten changes with the correct author information
git push -f

Thank you very much for the reminder and walkthrough on the rebase. I've completed it.


114 action buttons more prominent

fixes #114

thing that needs to be fixed:

add exit button disabled style
exit button turning white in some places??

Plan for changing colors of buttons:

Exit button in black - white/gray on hover
Restart button in black - white/gray on hover (same as above)
Back button in red - darker red on hover
Answer buttons in white - gray on hover


enable inline actions for connection dialog's browse tab

This is part of the browse connection feature GA work.
There is a feature gap for browse Azure resources between the connections view and connection dialog, currently the actions are only available as context menu in the connection dialog, in this PR, I am adding support for inline action bar, just like in the connections view, the actions are only visible when the tree item is focused/selected/hover.
In Connections View:

In Connection Dialog:
Before:

After:

Pull Request Test Coverage Report for Build 779191371

1 of 58 (1.72%)  changed or added relevant lines in 1 file are covered.
8 unchanged lines in 1 file lost coverage.
Overall coverage decreased (-0.04%) to 43.539%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

src/sql/workbench/services/connection/browser/connectionBrowseTab.ts
1
58
1.72%

Files with Coverage Reduction
New Missed Lines
%

src/sql/workbench/services/connection/browser/connectionBrowseTab.ts
8
6.9%

Totals

Change from base Build 779172226:
-0.04%

Covered Lines:
26262

Relevant Lines:
55094

💛  - Coveralls

Will these show up for all kinds of connections such as CMS?

Will these show up for all kinds of connections such as CMS?

@abist this is for saved connections, so CMS won't show up there, right?

@alanrenmsft Yeah, it won't. I thought this was for all connections.


fix(orchestrator): bump rjsf dependencies

Using @rjsf/mui form like the rbac plugin does to fix the issue seen in https://github.com/janus-idp/backstage-plugins/pull/1690.

cc @gciavarrini

/approval

/approve

it LGTM. Doubt #1690 is unmerged at the moment, is this PR dependent?

I believe #1690 will be rebased as soon as this PR is merged and the changes on rjsf will be discarded because they are already in.


Added pytz and tzlocal python packages to rosdep

This adds two python packages for dealing with time conversion between time zones.

Comment addressed. Thanks!

Lgtm, but it needs a second review before merging.

+1
If anyone's interested there are ubuntu packages for these as well: http://packages.ubuntu.com/xenial/python-tz and http://packages.ubuntu.com/xenial/python-tzlocal as of xenial


Creates empty exports

Happens when rewriting a file that is already es module (but transpiled via webpack):
export default {foo: true}

becomes
const exported = {foo: true}

export default exported
export const {} = exported
export const {foo} = exported

@wmertens Hey 👋 , can you provide me with the code generated by webpack? I want to check, but my theory is that your webpack is using Babel, and the output is incompatible with the named-export-generation transformation.


chore: Goodbye little Data Importer 👋

Hi everyone!
Now that 99% of the user base has migrated to the Flutter app, we can remove the process of migrating lists from old apps (Android/iOS).
In this PR, this is essentially a giant git rm.
I have checked the app works on Android/iOS/macOS with a clean installation and an already existing one.
So for me, it's time to say goodbye to this code.
On iOS, I think reduce a lot the size, as Realm is a big dependency.

Ok, for the migrations of the legacy Open Beauty Facts (Android, iOS), Pet Food (Android) and Products (Android), we'll do something rash, I believe.

Ok, for the migrations of the legacy Open Beauty Facts (Android, iOS), Pet Food (Android) and Products (Android), we'll do something rash, I believe.

Actually, if we go for a single app, there is no migration possible

small conflict to solve.
Given the numbers, We will just probably put a screen in the F-Droid apps and the Play Store apps asking the users to uninstall.

I have re-tested everything and it's OK.
(Actually, it was also without the change, but we're now sure, there won't be any unexpected regression)

You served many users well


sst file deleted but fd not released

i found when compact happen, useless sst file is deleted but maybe file channel.close is not called so if you use lsof, it shows like below, or maybe there is somewhere else these file channel close will be called?
java       94251 94401    root  573r      REG              253,2     1540703  203177060 /home/root/test/leveldbtest/001014.sst (deleted)
java       94251 94401    root  574r      REG              253,2     1540770  203177061 /home/root/test/leveldbtest/001016.sst (deleted)
java       94251 94401    root  577r      REG              253,2     1540767  203177072 /home/root/test/leveldbtest/001030.sst (deleted)
java       94251 94401    root  579r      REG              253,2     1540710  203177066 /home/root/test/leveldbtest/001022.sst (deleted)
java       94251 94401    root  585r      REG              253,2     1739557  203177071 /home/root/test/leveldbtest/001028.sst (deleted)
java       94251 94401    root  586r      REG              253,2     1540709  203177073 /home/root/test/leveldbtest/001032.sst (deleted)
java       94251 94401    root  587r      REG              253,2     1540768  203177074 /home/root/test/leveldbtest/001034.sst (deleted)
java       94251 94401    root  589r      REG              253,2     1540710  203177076 /home/root/test/leveldbtest/001037.sst (deleted)
java       94251 94401    root  590r      REG              253,2     1540769  203177077 /home/root/test/leveldbtest/001039.sst (deleted)
java       94251 94401    root  591r      REG              253,2     1540711  203177078 /home/root/test/leveldbtest/001041.sst (deleted)
java       94251 94401    root  592r      REG              253,2     1540769  203177079 /home/root/test/leveldbtest/001043.sst (deleted)

Implementation of TableCache.java use Finalizer.java to close sst files. Finalizer.java use phantom reference to delay table/file handle close; so file handle may be closed long after DB has (tried) delete it.
This is even worse in Windows as file reference (in file tree) can only be deleted after close really happen.
One possible solution would be the one in pcmind/leveldb fork commit; change is quite big, so if acceptable in this repository (due to its maintenance state), a PR could be done out of it.


Compile with vim-friendly settings

Hi there, this is an extremely cool plugin!
Would you consider adding an option to lush.compile that forces vim-friendly settings? As far as I know,
that would just be the removal of the blend option. I use this function to update my colorscheme:
function! colors#fromlush(name) abort " {{{1
  " use runtimepath?
  let cname = fnamemodify($MYVIMRC, ':h') . '/colors/' . a:name . '.vim'
  if !has('nvim') || getftime(fnamemodify($MYVIMRC, ':h') . '/lua/' . a:name . '/init.lua') <= getftime(cname)
    execute 'colorscheme' a:name
    return
  endif
  let lines = luaeval('require("lush").compile(require("' . a:name . '"), {force_clean = true})')
  " Remove incompatible with vim option -- TODO select based on nvim/vim
  call map(lines, 'substitute(v:val, ''\s\?blend\s*=\s*\S*'', "", "")')
  call writefile(lines, cname)
  execute 'colorscheme' a:name
endfunction

Evidently, it's not a big complication to add this code myself as the user, but it was a bit tricky to understand where the issue was and why my colorscheme was causing issues on loading in vim.

As it happens, was also asked yesterday, https://github.com/rktjmp/lush.nvim/issues/29
Lush is a neovim plugin that happens to have some vim compatibility, basically by accident.
Why I am hesitant to just throw the option in (as you say, it's not a hard code problem) is sort of two fold:

the API should be extensible and clear

Adding a key here, a key there, etc is death by a thousand cuts for an API, before long you're in php.
I hate having API's change underneath me, and no one really comes back regularly to their vim plugins to check its up coming changes and there's no lock file equivalent (maybe you could use semver branches I guess).
So it needs some thinking on whether just adding a "vim8_mode" key is ok, vs a feature toggle set (might be best, to support gui client options too?), vs supporting different compilers

Adding one rule to drop blend isn't too complicated, but I can imagine if vim starts using a different key name for gui (or more likely, use a different key for blending), people may expect Lush to support that too. Then I'm having to support something I don't use (vim).

That's not to say no, just why I feel a bit uncomfortable adding it... Obviously it would be useful to people so it will probably appear in some form.
The readme definitely needs a warning about blend options right now at any rate.

Huh, sorry for missing that! I think I just searched for 'compile'.
You do make really good points about why not to include it. For me, it would have been helpful to have:

a clear path for how to get the compiled lines in vimscript or lua
a list of known incompatible options (i.e including a disclaimer that this may be extended without your notice)

That way you don't need to extend the API, and I would have known what I needed to do. Filtering some
strings pretty programming 101, so the user should be able to understand what to do from there.

Likely to just include a strip option to compile.
lush.compile(spec, {
  strip = {"gui",  "blend"}
})

~~That way I can pretend it isn't for Vim :eyes: ~~
strip
drop
remove
dump
dont_include
exclude

Probably exclude. Maybe exclude_keys.

Fixed in  aaa9a4c77330ea2a69a88d8e7950edeb01e9f359
You may still need to do some manual touch ups. compile won't include code to clear existing highlights (even though that was listed as an option, it was an error in the docs) because it relies on checking some vim-runtime settings that I don't want to pollute down to that layer.
This really only needs to be done if you're hot-reloading like :Lushify does, so it is likely not a problem if you're targeting vim.
See instructions, specifically compiles exclude_keys option.
https://github.com/rktjmp/lush.nvim/blob/3a188f13ffcd026e1c29938ff2fb1a8177b8f953/doc/lush.txt#L549-L599
https://github.com/rktjmp/lush.nvim/blob/3a188f13ffcd026e1c29938ff2fb1a8177b8f953/lua/lush.lua#L15-L31


Bot returns 500 directline.postactivity with empty bodies in HTTP to Emulator

I deployed my bot to a server, I can see the homepage fine but when I connect the Emulator it first shows the following messages

[02:05:30]Emulator listening on http://localhost:51103
[02:05:30]ngrok listening on https://7e054659.ngrok.io
[02:05:30]ngrok traffic inspector:http://<IP_ADDRESS>:4040
[02:05:30]Will bypass ngrok for local addresses
[02:05:30]POST201directline.startConversation

The bot does not even say the conversationUpdate messages to me, and when I say something I get the following in the console

[02:05:34]->messagehi
[02:05:35]POST500directline.postActivity

I when connected the Fiddler tool to see what was going through the wire, I noticed that there were errors from the get-go
Request:
POST http://woundassistant.hubblesphere.com/api/messages HTTP/1.1
Host: woundassistant.hubblesphere.com
Connection: keep-alive
Content-Length: 494
content-type: application/json
accept: */*
user-agent: electron-fetch/1.0 electron (+https://github.com/arantes555/electron-fetch)
accept-encoding: gzip,deflate
connection: close
Accept-Language: en-US

{"type":"conversationUpdate","membersAdded":[{"id":"70ee0990-8ca9-11e8-b97c-6b83fa92679c","name":"Bot"}],"channelId":"emulator","conversation":{"id":"123de570-8cac-11e8-a18a-113a5bbb528f|livechat"},"id":"124119c3-8cac-11e8-b97c-6b83fa92679c","localTimestamp":"2018-07-21T02:05:30-04:00","recipient":{"id":"70ee0990-8ca9-11e8-b97c-6b83fa92679c","name":"Bot","role":"bot"},"timestamp":"2018-07-21T06:05:30.332Z","from":{"id":"default-user","name":"User"},"serviceUrl":"https://7e054659.ngrok.io"}

Response
HTTP/1.1 500 Internal Server Error
Server: Kestrel
Date: Sat, 21 Jul 2018 06:05:30 GMT
Content-Length: 0

My hello request
POST http://<IP_ADDRESS>:51103/v3/directline/conversations/125ba6a0-8cac-11e8-a18a-113a5bbb528f%7Clivechat/activities HTTP/1.1
Host: <IP_ADDRESS>:51103
Connection: keep-alive
Content-Length: 331
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) BotFrameworkEmulator(V4PREVIEW)/4.0.15-alpha Chrome/59.0.3071.115 Electron/1.8.1 Safari/537.36
Origin: file://
X-Requested-With: XMLHttpRequest
Authorization: Bearer eyJjb252ZXJzYXRpb25JZCI6IjEyNWJhNmEwLThjYWMtMTFlOC1hMThhLTExM2E1YmJiNTI4ZnxsaXZlY2hhdCIsImNvbnZlcnNhdGlvbk1vZGUiOiJsaXZlY2hhdCIsImVuZHBvaW50SWQiOiI3MGVlMDk5MC04Y2E5LTExZTgtYjk3Yy02YjgzZmE5MjY3OWMifQ
Content-Type: application/json
Accept: */*
Accept-Encoding: gzip, deflate
Accept-Language: en-US

{"type":"message","text":"hi","from":{"id":"default-user","name":"User"},"locale":"en-US","textFormat":"plain","timestamp":"2018-07-21T06:05:34.262Z","channelData":{"clientActivityId":"1532153130507.5751479373343638.0"},"entities":[{"type":"ClientCapabilities","requiresBotState":true,"supportsTts":true,"supportsListening":true}]}

Response to hello
HTTP/1.1 500 Internal Server Error
access-control-allow-origin: file://
vary: origin
access-control-expose-headers: api-version, content-length, content-md5, content-type, date, request-id, response-time
Content-Type: application/json
Content-Length: 2
Date: Sat, 21 Jul 2018 06:05:35 GMT
Connection: keep-alive

""

How do I further diagnose this?

@fahadash : You might check out https://github.com/Microsoft/botbuilder-dotnet/pull/821 and check out the AppInsights sample.  It will log exceptions to App Insights and may provide some clues as to what's happening in your application.
Are you using a sample as a basis for your development?

I created my own bot, I found what the issue was. I had to add a ton of logging to be able to find out what was wrong. Basically there was a crash in the bot code which caused this.


Fix potential crashes with TileMap navmesh baking

Fixes potential crashes with TileMap navmesh baking.
I discovered this because a user send me a project that crashed on a large TileMap when baking a navigation mesh from it.
Turned out it was not the size in quantity of the cells that was crashing it. The parsing crashed due to calling size() with empty TileData which resulted in the TileSet index macro causing a CowData nullptr crash when calling navigation.size().

The reason the loop was even running was because the used cells count was not updated after TileMap.clear(). The TileMap reporting the wrong used cell count after clear() is fixed with https://github.com/godotengine/godot/pull/83890.
So this pr now guards the parsing process against empty TileData or empty / zero-sized outline arrays.
Also improves performance slightly for complex polygons by switching to ptr() / ptrw().

Thanks!


Fix Bubble misplace

Fixes
Issue Number:
#1596

What is the current behavior?
What is the new behavior?
Fixed bubble misplacing on width change.
Other information

PR Checklist

Toggle...
What kind of change does this PR introduce?

[ x ] Bugfix
[ ] Feature
[ x ] Code style update (formatting)
[ ] Refactoring (no functional changes)
[ ] Documentation changes
[ ] Other - Please describe:

Please check all that apply to this PR using "x":

[ x ] I have checked that this PR is not a duplicate of an existing PR (open, closed or merged)
[ ] I have checked that this PR does not introduce a breaking change [ [ [ Not sure how to check this for styles ] ] ]
[ ] This PR introduces breaking changes and I have provided a detailed explanation below

Thanks for the PR @Myzel394 , we'll get it looked at shortly.


Improve error messages and exit codes of command line programs

Catch exceptions and do not show useless stack trace.  Return exit codes on errors.


Documentation - rebuild project after version bump

I wasted some time trying to figure out why I was getting the issue about missing annotations from the shaded Jackson module, since I ignored it properly in my IDE. Turned out that after the version changes (in this case from 0.7.2 to 0.7.3), you really have to rebuild the project, otherwise the generated pom.xml with reduced dependencies still point to the old version and will not be properly ignored. Something to add to the building from source article.

When building locally from source, we recommend a clean install of everything,
See.. https://deeplearning4j.org/buildinglocally
If someone followed those instructions would they still have to rebuild the project as you describe here.

Yes, that's absolutely true. The thing is, I've been using the master branch for several months now and actively pulling updates (and contributing fixes and features). In this workflow, 99% of the time just running git pull does the trick and you don't need to rebuild anything, as IntelliJ does most of the work like downloading new dependencies or new versions on the fly. Sometimes though, it doesn't work automatically, and that's where I got stuck. So I guess it's more of a friendly reminder for people already having built everything from source and using master that sometimes you might have to rebuild things again according to those docs.

We appreciate your contributions, so to be clear here this would be an appropriate patch to the docs on this page.
https://deeplearning4j.org/buildinglocally
"* Note, if you are tracking master updates in git, remember to rebuild the project after any changes. If you do not rebuild subtle dependency management issues may result."
If that documentation change would be a satisfactory fix, go ahead and close, and I will edit that page today.


Need to clean up network::encodable and network::serialize

I think in the next major release we should fix the module names for the consensus encodable/decodable traits. Specifically I propose removing the serialize, encodable and consensus_params modules

network::encodable::VarInt -> consensus::encode::VarInt and expose it at the crate level
network::encodable::VarInt -> consensus::encode::CheckedData
network::consensus_params -> consensus::params
network::consensus_params::ConsensusParams -> consensus::params::Params
network::encodable::ConsensusEncodable -> consensus::encode::Encodable but expose it as consensus::Encodable
network::encodable::ConsensusDecodable -> consensus::encode::Decodable but expose it as consensus::Decodable
network::seriailize::Error -> consensus::encode::Error
network::serialize::BitcoinHash -> util::hash::BitcoinHash and expose it at crate level
network::serialize::RawEncoder -> consensus::encode::RawEncoder and expose it as consensus::RawEncoder
network::serialize::RawDecoder -> consensus::encode::RawDecoder and expose it as consensus::RawDecoder
network::serialize::SimpleEncoder -> consensus::encode::Encoder and expose it as consensus::Encoder
network::serialize::SimpleDecoder -> consensus::encode::Decoder and expose it as consensus::Decoder

Finally, we should deprecate everything in network::socket and network::listener because low-level networking is out of scope for this library. That leaves only p2p network messages under network, which is good. (Though we should also rename/restructure the modules there - I'll open yet another issue about that.)
Unrelatedly, we should also delete nu_select from macros.rs because this is horribly bitrotted and I doubt it even compiles anymore.

I'll do this as my PSBT code needs to be refactored over this.

@apoelstra It seems like VersionMessage's constructor takes in a Socket, shall I split that parameter into the respective fields, or create a SocketInfo struct in lieu of the deleted Socket?

Also, if anyone can take a look at why compilation is failing for my WIP commit, it'd be much appreciated. I've very clearly imported the MerkleRoot trait but it doesn't compile...


Adding ability to secure Sentinel

Pull Request (PR) description

This Pull Request (PR) fixes the following issues

Failed test does not look to be related to the Code.

thanks for the PR! can you pleae add a unit test for this?

@bastelfreak Note that CI check for Puppet 5 - Ubuntu 20.04 is failing in all PRs because there are no Puppet 5 packages in apt.puppetlabs.com for Ubuntu 20.4 (Puppet 5 is not supported for Ubuntu 20.4, see https://puppet.com/docs/puppet/5.5/system_requirements.html#platforms-with-packages). Could this check be eliminated?

Any hope this could be merged @bastelfreak ?


Missing Values in CSV is taking as blank String not null

I am trying to load the csv file using pyspark and found blank values in CSV is always taken as blank String in Dataframe created even in PERMISSIVE mode but the doc says

PERMISSIVE: tries to parse all lines: nulls are inserted for missing tokens and extra tokens are ignored.

I am using following script -
df_test= sqlContext.read.format("com.databricks.spark.csv").options(delimiter=",").options(header="true").load("/Volumes/test.csv")

thats why now fillna is not working .

What does the raw data look like? Just want to make sure there is no space or other character in place of that token.

its a blank cell with no space & character in a csv cell.
There is a piece of code in CSVReader
settings.setNullValue("")
I tried modifying it to null and it didn't work , it was bit hard to understand the code as not aware of scala.

I'm using the cars.csv from the readme and am also getting blank results.
df = sqlContext.read.format('com.databricks.spark.csv').options(header='true').load('cars.csv')
df.fillna('SHOULD BE NULL').show()

+----+-----+-----+--------------------+--------------+
|year| make|model|             comment|         blank|
+----+-----+-----+--------------------+--------------+
|2012|Tesla|    S|          No comment|              |
|1997| Ford| E350|Go get one now th...|SHOULD BE NULL|
|2015|Chevy| Volt|      SHOULD BE NULL|SHOULD BE NULL|
+----+-----+-----+--------------------+--------------+

I would expect the 'blank' column in the Tesla line to be null.
Also if I add commas in the cars.csv file to have it separate all columns
year,make,model,comment,blank
"2012","Tesla","S","No comment",

1997,Ford,E350,"Go get one now they are going fast",
2015,Chevy,Volt,,

then all the fields are emty string rather than nulls
+----+-----+-----+--------------------+-----+
|year| make|model|             comment|blank|
+----+-----+-----+--------------------+-----+
|2012|Tesla|    S|          No comment|     |
|1997| Ford| E350|Go get one now th...|     |
|2015|Chevy| Volt|                    |     |
+----+-----+-----+--------------------+-----+

I guess that we're only able to distinguish between empty strings and nulls if we assume that all empty strings will be quoted in the CSV?

+1 on this being a bug and some more thought needed in spark-csv on how to correctly handle  NULL vs empty string.  This simple example demonstrates the inconsistencies of this package.
Simply put, it should support reading a table from a source (like JDBC), writing that table out to CSV, read that data back, and have the exact same data that was in the original source.  This seems impossible today.
scala> val df = sqlContext.read.format("jdbc").options(Map(
     |              "url" -> "jdbc:postgresql://localhost:5432/grahn",
     |              "user" -> "grahn",
     |              "password" -> "",
     |              "dbtable" -> "public.spark",
     |              "driver" -> "org.postgresql.Driver")).load()
df: org.apache.spark.sql.DataFrame = [a: string, b: string]

scala> df.show()
+-----+----+
|    a|   b|
+-----+----+
|EMPTY|    |
| NULL|null|
+-----+----+

scala> df.registerTempTable("df")

scala> sqlContext.sql("SELECT * FROM df WHERE b is null").show()
+----+----+
|   a|   b|
+----+----+
|NULL|null|
+----+----+

scala> df.write.format("com.databricks.spark.csv").save("/tmp/spark-csv.csv")

scala> val df2 = sqlContext.read.format("com.databricks.spark.csv").load("/tmp/spark-csv.csv")
df2: org.apache.spark.sql.DataFrame = [C0: string, C1: string]

scala> df2.show()
+-----+----+
|   C0|  C1|
+-----+----+
|EMPTY|    |
| NULL|null|
+-----+----+

scala> df2.registerTempTable("df2")

scala> sqlContext.sql("SELECT * FROM df2 WHERE C1 is null").show()
+---+---+
| C0| C1|
+---+---+
+---+---+

scala> sqlContext.sql("SELECT * FROM df2 WHERE C1 = 'null'").show()
+----+----+
|  C0|  C1|
+----+----+
|NULL|null|
+----+----+

$ cat /tmp/spark-csv.csv/part-00000
EMPTY,
NULL,null

It woudl be awesome if loading nulls was possible, either by forcing empty strings to be quoted or being able to denote a special value (e.g. null or NA) to represent nulls in the csv

I am not able to apply fillna on my dataframe. We are using spark 1.3.1. Is there any why we can replace all null values to blank for all columns ?

I spent more than 2 hours as you tested the thing and the only solution I have found is:
my_dataframe.na.replace ('', 'unknown').
Note that I used spark 1.5.1 and syntax is that of PySpark.

In 1.4.0 it looks like there is a "nullValue" option that allows you to specify (specificy?) the string that you want to use for null. This is great. It would be even greater if you could specify a list of such strings that should be interpreted as null. For example,
option("nullValue", ["NA", "Missing", "MISSING", "", "?"])

https://github.com/databricks/spark-csv/issues/192 seems to suggest this nullValue is only ever used when writing, not when reading.

@kadrach No, nullValue is also supported when reading as described in README.md.

I believe this is fixed in https://github.com/databricks/spark-csv/pull/224. Can we maybe close?

nullValue is used when reading and writing. From my point of view, it is fine to close.

df.na.replace(raw.columns,Map("" -> "0")).show()             // to convert from blank strings to zero

@HyukjinKwon
'nullValue is also supported when reading'  is also doesn't work when I read csv file  with spark2.3, although I can use fillna instead it. Comments may need to be changed, the default nullValue is null and not an empty string


Replace NPE on SET GLOBAL with more meaningful error

Checklist

[x] User relevant changes are recorded in CHANGES.txt
[x] Touched code is covered by tests
[x] Documentation has been updated if necessary
[x] CLA is signed
[x] This does not contain breaking changes, or if it does:

It is released within a major release
It is recorded in CHANGES.txt
It was marked as deprecated in an earlier release if possible
You've thought about the consequences and other components are adapted
(E.g. AdminUI)

Should this go into 4.0 and have a release notes entry?

could be backported or?

could be backported or?

Added a release notes entry.


Fix ctest script on Travis CI

Use an alias for mpiexec that add the option flag --allow-run-as-root
rather than adding a dummy user

Address Issue #88

Still need to add the -fsanitize flag
Not sure how to escape the double quote in -D CMAKE_CXX_FLAGS="..."

Current coverage is 89.46%

Merging #109 into master will decrease coverage by -0.01% as of 86db439

@@            master    #109   diff @@
======================================
  Files           65      66     +1
  Stmts         4124    4140    +16
  Branches         0       0
  Methods        274     276     +2
======================================
+ Hit           3690    3704    +14
  Partial          0       0
- Missed         434     436     +2

Review entire Coverage Diff as of 86db439

Powered by Codecov. Updated on successful CI builds.

Ready for your review.

Please wait for the tests results before you merge. I changed one line and squashed all the commits.


Avoid unnecessarily recreating functions on renders when creating prop values

Feature Request
Description
There are a few instances in the code where functions are being created before being passed as props to child components.
The issue here is that these functions are created on each render, creating a very small performance hit.
Additional context
The main offender here is when a component has an asynchronous method, but its child component takes a synchronous one.
Here, the async method is wrapped in a sync method before it is passed as a prop. e.g.
sendChatMessage={() => void sendChatMessage()}

Either:

Pass async methods down to the child components, and having the child component call void methodName(). - GO FOR THIS ONE
Wrap the async method in a closure.
Create a synchronous method in the parent component and use useCallback.

Acceptance criteria
Refactor ticket, so just regression here.

This needs more precise info - we need to identify which components need changes, before accepting this one as Ready.


Dev lu daley/preliminary-pr-for-ods-table-test-troubleshooting

created a different PR to close out branch


Adds information about Temporal workflow engine

Type of change

[x] Add a category or subcategory.

Rationale
A new category titled Workflow Engines would be an appropriate section for information about services that manage workflows.
Checklist

[x] The contribution follows the CONTRIBUTING.md document guidelines.

Regarding the suggested entry:

[x] It is sorted alphabetically in its section.
[x] It does not exist already in the list.
[x] It is not for marketing purposes.

:wave:
Thank you for the contribution.
Temporal is already listed under the "Coordination & Governance" section.
Closing because duplicate.


iOS build with Xcode 8 throws "Command xcodebuild failed with exit code 65"

Using the plugin to build a project with Xcode 8 is throwing due to:
=== BUILD TARGET MaterialCard OF PROJECT Pods WITH CONFIGURATION Debug ===
“Use Legacy Swift Language Version” (SWIFT_VERSION) is required
to be configured correctly for targets which use Swift.
Use the [Edit > Convert > To Current Swift Syntax…] menu to choose a Swift
version or use the Build Settings editor to configure the build setting directly.

Fixed the issue by changing the Podfile:
pod 'SkyFloatingLabelTextField', '~> 3.2.0'

post_install do |installer|
    installer.pods_project.targets.each do |target|
      target.build_configurations.each do |config|
        config.build_settings['SWIFT_VERSION'] = '3.0'
      end
    end
  end

Please consider update the pod version, a lots of issue fixed on the iOS part with the latest version.

@rhanb - I've just released v2.0.2 that has bug fixes as well as pulls in updated SkyFloatingLabelTextField 3.3.0 and updated README documentation. You should be good to go 😄


Goals

closes #2

Can either force or drop changes to the pdf... either way the actions will overwrite it.

A few comments:

"Users of the system are interested in getting an appropriate return for their investment". For this line, are you talking about the customers who pay for the service or users who label? If the former then I think that distinction should be made for clarity.
There is mention of uploading photos, but I thought we had to handle obtaining the needed photos on our end (This could just be a misunderstanding on my part)

A few comments:

"Users of the system are interested in getting an appropriate return for their investment". For this line, are you talking about the customers who pay for the service or users who label? If the former then I think that distinction should be made for clarity.

Good point - will do

There is mention of uploading photos, but I thought we had to handle obtaining the needed photos on our end (This could just be a misunderstanding on my part)

I believe we intend to allow users to upload images for processing. @OlegGlo can you remind me what you were thinking? We can also make this more ambiguous for now while we refine our design.

With relation to image upload, Oleg mentioned that most likely both image upload by the customer and image sourcing on our end for the customer is part of the plans. Not sure if that effects anything you wrote


stats: wait until blockscout finishes indexing

For now we have to manually wait until blockscout finishes indexing, and only after that start stats service (overwise statistic will be incomplete). This is super inconvenient, so
I suggest:

In stats determine if blockscout is currently in indexing status and just wait + return {"status": "WAITING_FOR_BLOCKSCOUT_INDEXING"} instead of {"status": "SERVING"} in /health
In frontend: show Stats and charts button in the menu, but in stats page go to /health endpoint and in case WAITING_FOR_BLOCKSCOUT_INDEXING show page like "We are currently indexing blockchain data. Please wait until blockscout finishes indexing."

The waiting part is working; reporting extracted to a separate issue https://github.com/blockscout/blockscout-rs/issues/1123


Deploy using KESTREL server only instead of IIS on Windows.

One thing I love about the Visual Studio for Mac is the kestrel server. It starts up super quick. Speeds up development times a TON.
So far I have not found a way to NOT USE IIS on Windows. Is it possible to force Kestrel server only deployment on Windows with Visual Studio 2017 (Community edition)?

I'm assuming you would like to run your application through visual studio. In visual studio, you can change the target by clicking the dropdown next to IIS Express to the name of your application. This, by default, will run Kestrel stand alone. If you would like to remove IIS Express as a launch options, in your launchSettings.json file (under properties), you can remove the IIS Express profile.

It is possible to use kestrel. I'm doing it. Just no idea how from the top of my head

It's so amazing! Yes, it works. Finally no more IIS! Now onto brainstorming ideas for a world-changing web app with mass-appeal!


Allow to easily configure loggers

Following #8, make it easy to configure loggers, their level, etc.

Here's an example of the planned syntax:
[tegral.logging]
level = "DEBUG"

[tegral.logging.loggers."my.example.logger"]
level = "INFO"


Cannot download any images from gelbooru/danbooru

The title says it all. I just tried downloading all the Hyperdimension Neptunia images from both gelbooru and danbooru (since for some reason they have different ammounts of images), and when I click download, it loads it all, starts individually downloading the images like it's supposed to, then I get the red ball of death and it errors every image I download.

Alright, nevermind. Reinstalling the program seems to have fixed it. Go figure.


Exception Handling: HttpStatusException

JSoup will throw HttpStatusException when get response is not 200 (HTTP Status OK):
https://jsoup.org/apidocs/org/jsoup/HttpStatusException.html
In this case, the Exception Handler should:

Log exception message as warning
Log the HTTP status code as warning.
Log the stack trace on a warning log file.
Continue execution.
(Optional): Retry later.

Won't be done for now.


Make Radish work on examples/pagerank.myl

The overall change was just to get Radish to work on SingletonRelation in more cases. GrappaSingletonRelation was assuming that all SingletonRelations are followed immediately by Apply to give it a non-empty schema. This assumption turns out to be false, and the new test test_expr_singleton checks for such a case. Also added a test for basic case of a singleton relation.
A cool effect of allowing 0-ary tuples is that I get Distinct (i.e., groupby($0, (no aggregate))) for free now!
This change also uncovered my still-poor handling of floating point in the verifier for Radish tests. Since we check the test output against expected output using a hash table and == we needed a wrapper for floats that behaves properly.

Coverage increased (+0.2%) to 91.871% when pulling 5331d4c526d94d00d2102a34129b65c25cb2689b on bmyerz/features-for-pagerank into 2d8af658492e6424020ea60d44c877829a2cf254 on master.

Coverage increased (+0.2%) to 91.862% when pulling 9f1573d00c22b4aa1250f99df12f7822231ef2b8 on bmyerz/features-for-pagerank into 2d8af658492e6424020ea60d44c877829a2cf254 on master.


Don't use nullable annotation to indicate optional listeners

Nullable annotations make sense for optional view bindings, but not so much for listener methods. If the listener method has no return value or primitive return value you are basically telling the compiler that you have a Nullable void or primitive and Android Studio gives you an inspection warning for it. If the listener did return a reference value (not sure if any do) you would be saying that the return value is nullable when in fact it may not be.
Should come up with a better alternative. That may be having things like @OptionalOnClick or add your own @Optional annotation to use in place of @Nullable

Resolved by #388.


PR: Rearrange find and replace layout and make it more adaptive to various screen widths

I've tried to fix #6312 by rearranging the layout and making it more adaptive to the width of the editor tab.
I expect the CI tests to fail :)

Hello @homocomputeris! Thanks for submitting the PR.

In the file spyder/widgets/findreplace.py, following are the PEP8 issues :

Line 165:80: E501 line too long (81 > 79 characters)
Line 418:80: E501 line too long (85 > 79 characters)

Thanks for your contribution @homocomputeris! Could you post screenshots of before and after your work? Thanks!

@CAM-Gerlach I can revert whitespaces and blocks but I can do nothing with PEP's line lengths and indents because in this case they are due to very long var names, which I tried to refactor but it turned out ever worse.

@homocomputeris
Why not do
        self.replace_button = create_toolbutton(
            self, text=_('Replace and find next'),
            icon=ima.icon('DialogApplyButton'),
            triggered=self.replace_find,
            text_beside_icon=True)

or even
        self.replace_button = (
            create_toolbutton(self, text=_('Replace and find next'),
                              icon=ima.icon('DialogApplyButton'),
                              triggered=self.replace_find,
                              text_beside_icon=True))

Both are PEP8 compliant (IIRC) and more correct than the current arrangement; I believe the former is probably more conventional and makes more sense.

@CAM-Gerlach Thanks for advice.

I don't understand why 3.5 build fails

It was just a random failiure, apparently. I've restarted that build, and it looks like its on its way to success.

@CAM-Gerlach, I'm working on a fix for the failure in Python 3.5. It has to do with a new release of Pyzmq.
@homocomputeris, does the new rearrangement only applies when the Editor size is small enough to display all buttons next to the search and replace fields?

@ccordoba12 It always has 4 lines. The problems it solves:

always enough space for reasonable input
layout doesn't jitter because of search results
allows narrow Editor tab
thus, fits half of a lowres screen without unsnapping

It weren't pinned to Editor and its size didn't depend on tabs arrangement, it would be more reasonable to make 2 lines like in PyCharm (short input field) or SublimeText (long input field).

@homocomputeris Looks like its fixed, so if you rebase against the latest 3.x the failure should clear itself up.

@CAM-Gerlach The fix worked.

No worries.
Actually, I based this layout on Sublime's and PyCharms. (And the current one has 2 lines.) It seems intuitive, simple, and allows quite long search lines.
From my point of view as a user: I don't see any problem in 2-3 lines fewer in the editor because search scrolls to the next match. Neither I leave this tool open after replacing.
However, I would definitely not want the interface to change without my permission: if Search is the first row, and Replace is the second, I do not expect them to move or change size (as Search does now when no matches changes).
To be honest, I have no idea how to take into account all possible screen, window and tabs widths. Will these fields jump every time a user opens or resizes a tab? If Spyder desnaps on full HD screens, I don't know what should be considered not narrow.
So, I'm not sure if it's worth implementing.

I'll take a look at how this looks when I have some time. Sorry for the delay in coming back to you @homocomputeris.

@goanpeca Notepad++ also has a floating window (which offers a lot more features and functionality), but on the UI side I personally greatly prefer the built-in approach, as the floating windows tend to get in my way and become an annoyance.
Also, not sure why CircleCI is core dumping, and it says I don't have permissions to restart it even though it shows me as logged in (???).

@homocomputeris, I don't like your proposed solution. We shouldn't use two rows by default for find and two more for replace because there's a real waste of vertical and horizontal space on wide screens.
Instead, the design should be responsive and use two rows for each only when the width of the application is smaller than certain value (e.g. 800 px).

a real waste of vertical and horizontal space on wide screens

It seems to me that a natural workflow supposes closing the search bar after usage.
During search in doesn't matter a lot because it scrolls to the next match.

application is smaller than certain value (e.g. 800 px).

Let's optimistically assume that average screen size is 1920-by-1080.
If I use quite intuitive (and default?) layout with editor on the left side and console-whatever on the right, considering scrollbars and separator, the editor's width is approx. 900 px.
In current layout, besides uneven field sizes and the Search field that stretches when results are found, the replace field is way too shorter. Well, of course, it is possible to make them even by using some cryptic icons instead of text or abbreviations like 'RafN', 'RS' etc., sacrificing usability.
Finally, adaptive layout will impose minimal width of the fields that will desnap the window on smaller screens as it does now (which was the initial reason).

So we can potentially move forward on this, how would you suggest @homocomputeris implement such a responsive approach in our GUI?

I don't know, but this is his itch the one he's trying to scratch, not ours, so he have to find a better solution.

I would be very surprised if the average scientist, engineer or data analyst would have a significantly larger (and quite possibly multi-monitor) screen than the average web browsing consumer user, both considering their need for it and higher-class machines in general, their higher status, and the overwhelming dominance of laptops with much smaller screens among consumers vs. workstations or at least laptops connected to additional screens for data scientists.

It is a reasonable notion.
In my experience, though, institutional hardware is usually quite old and is 1600 by 1200 in the best case. And even doesn't have DVI.
As you can see at a marketplace catalogue, the most manufactured models (and, obviously, demanded) are still, for general public, FullHD.
BTW, you can add optional telemetry to know screen resolutions exactly. This might be useful data for UX designers.

I don't know, but this is his itch the one he's trying to scratch, not ours, so he have to find a better solution.
Might be.

My recommendation for @homocomputeris would be reverting the layout change, which is the subject of contention

This is a nice solution.
Unfortunately, ATM I don't have much time for this, and the problem is small and doesn't bother me because I switched to PyCharm.
So I stall this.

In my experience, though, institutional hardware is usually quite old and is 1600 by 1200 in the best case.
And even doesn't have DVI.

Yeah, I guess it depends on the institution...I must be even luckier than I thought.

As you can see at a marketplace catalogue, the most manufactured models (and, obviously, demanded) are still, for general public, FullHD.

Oh, absolutely, and will be for a long time.

BTW, you can add optional telemetry to know screen resolutions exactly. This might be useful data for UX designers.

Yeah, we're indeed aware, but I'm pretty sure that won't ever happen any time soon due to privacy and trust concerns. Even a simple proposal of recording how many hits we get at our update server that Spyder already connects to, to get a rough idea of how many regular users we have (AFAIK, any estimates we have are simply guesses) was determined to be off limits.

I can provide some kind of flowlayout solution if needed. Below is an example. I could also limit the flowlayout to move the buttons all at once or not at all, so that we get a 2 rows or 4 rows setup only.

This doesn't fix the jittering due to the change of width of the no match label. I can't say that this is really bothering me to be honest...

@homocomputeris @jnsebgosselin Any chance of finishing this? Thanks!

This seems unlikely to get merged and accepted in its current form, and its picked up a number of merge conflicts, so closing this for now.

Thoughts on this PR @ccordoba12 ?

I mostly agree with the changes here. My main objection is that the layout needs to be flexible, i.e. we should not put the buttons below the search/replace QLineEdit's when there's enough horizontal space available. Instead, we should make things work as @jnsebgosselin displayed in this https://github.com/spyder-ide/spyder/pull/6427#issuecomment-397788773 above.
@goanpeca, could you take care of this?

And this also needs to be moved to master.

I think I still have the code I used to make the POC with the flexible layout. I can share it if needed.

I can share it if needed.

That'd be really helpful @jnsebgosselin!

You can check this out here:
https://github.com/jnsebgosselin/spyder/commit/c9b84570ed9f0403e0c2a4793528aa33ccd19e3e

Fantastic! Great to see this moving again.

@steff456, please take care of this one. For this you need to

Add the OP's git clone as one of your git remote's, with the command:
 git remote add homocomputeris https://github.com/homocomputeris/spyder.git

Fetch the contents of that remote and create an associated branch in your clone, with the commands:
 git fetch homocomputeris
 git checkout fix-find-replace

Move that branch to master as described here and fix all the possible merge conflicts.

Apply @jnsebgosselin changes mentioned in his https://github.com/spyder-ide/spyder/pull/6427#issuecomment-490894381 above.

Verify that things are working as displayed here: https://github.com/spyder-ide/spyder/pull/6427#issuecomment-397788773

Thanks @steff456!

@ccordoba12 I think it would be better to wait for my work in PR#9452 to be completed and merged before working on this because this is closely related.

Would it be too much trouble for you to merge that PR with master after this is merged?

Yes, I think a lot of work done here would have to be undone for this to work with what I'm proposing in PR #9452

Should we close this one then?

It depends if what I'm proposing in PR #9452 is accepted or not. If it is, then we can close this PR and I can take care of implementing the fix to solve the related layout issue.


feat: jsx variables

RM-9849

🧰 Changes
Uses jsx variables for user variables.
The first pass at variables was very simple:
Contact me at: <Variable name='email' />

This replaces with regular old jsx interpolated variables:
Contact me at: {user.email}

Much nicer!
🧬 QA & Testing

Broken on production.
Working in this PR app.

@rafegoldberg approve me?


Error after running script for some time

Hello!
First of all, thank you for this project, it's amazing!
I have a script that uses ImagePut to update information about a window every 200ms. The update function is something like this:
updateInfo() {      img := ImagePutBuffer("window")      this.getInfoX(img)      this.getInfoY(img)      this.getInfoZ(img) }
The getInfo functions mainly check pixel colors at different locations.
After about 1 hour of running the script I always get this error:

Parameter #1 of File.Prototype.RawRead is invalid.
Specifically: 0
Line#
1360: file := FileOpen(image, "r")
1361: hData := DllCall("GlobalAlloc", "uint", 0x2, "uptr", file.length, "ptr")
1362: pData := DllCall("GlobalLock", "ptr", hData, "ptr")
---> 1363: file.RawRead(pData, file.length)
1364: DllCall("GlobalUnlock", "ptr", hData)
1365: file.Close()

Is there a typo in your copy of ImagePut?
Line 1362 should read GlobalLock, not GlobalAlloc.
See: https://github.com/iseahound/ImagePut/blob/4479b845856638bdde7606697e5ccf78725e612e/ImagePut.ahk#L1362

Sorry, that's a typo in the topic, the file is correct! Going to edit it1

Can you check for a memory leak? It looks like one to me. See how much memory AutoHotkey is using in task manager - it should be stable.
Also can you post the full code? Are you deleting 'img'?

Also,
ImagePutBuffer("window")
is ambiguous syntax try:
ImagePutBuffer({window: "MyTitle})
to avoid the bug where a file name has the same name as a window

Can you check for a memory leak?
It increased 10MB in the last 3 minutes, I'm going to keep an eye on it. I had discarded this possibility earlier because when I got a leak in the past it would crash very early. EDIT: look's like a leak, it increased 30MB since writting this post.

Are you deleting 'img'?
I'm not deleting image. I thought it was not needed because it's inside a class method.

Also can you post the full code?
Sure: script.zip

I'm going to try deleting 'img' and every related object. I just need img := "", right?
Thanks!

Well this doesn't look like an ImagePut error.
Try to improve your memory management:
fn(img) {
    filepath := "something.png"
    static search := Imageputbuffer(filepath)
    img.imagesearch(search)
}

Make the search images static so you don't create a million of them. Then I see you're storing the screen capture in an array, you'll need to do arr[123] := "" to delete them.
You probably didn't notice, but it will have to hit a few gigs of ram until it crashes like above.

Add documentation to delete the buffers
Also, add an update() method to Imageputbuffer (for screen capture only)?

The problems seems to be with ImageSearch. Whenever the function is called the memory use increase a bit. I tested on this hotkey:

F1::
{
static img := ImagePutBuffer("Code")
static search := ImagePutBuffer("images/waypoint_1.png")
loop {
xy := img.ImageSearch(search)
Sleep(100)
}
}

The increase is very small... About 1MB each minute... I think that's why it took more than an hour to crash on my script.

Fixed by af2bca4d69010a86eb4eb2e20964996f5188071e 44a25c805a326135f2f2b30e4a7d7a420b13e8c9 and 2fbc4fe122ade19e3f6dfc2aad9b256be680e61a.


(request)i use gd 2.200 which is an unsupported version could you make it supported as all the new releases have this issue therefore i am limited to using the 1.1.1 version limited to using

Describe your idea.
Tell more about what this feature would do.
Examples.
If possible, reference your ideas to other projects for better understanding.

what's wrong with 2.204


VERSION: Bump to 0.1.4

Signed-off-by: Till Maas<EMAIL_ADDRESS>

Coverage increased (+11.9%) to 85.897% when pulling e5cbb8f43f74d7bdbeb0ea4a94142cc33a0594eb on tyll:bump_014 into 24c66fa4d17c6ae75eba4d70ce79561365a6de73 on nmstate:nmstate-0.1.


Does not skip ads anymore

Ever since the update where the skip button changed its design, ads are not being skipped. They are still played at a faster speed. Even with updaing to v2.4

same

This was fixed in the latest version.


Problem with window resize.

When I set the shadow for the window, it lags when i try to resize, or change to maximaze mode.

Hey @konstantinLyang. Would you mind to add some repro steps, including the OS version, and add a screenshot or short clip demonstrating the problem?

@yariker, windows 11. I adding screenshot about another problem "double top debug bar"

and with shadow, my app uses twice as much memory... -_-

@konstantinLyang, this sounds like 3 completely separate issues. Any luck in getting repro steps or screenshots on the original one?


Travis CI and Appveyor aren't working properly due to erroneous configs.

Travis and Appveyor are only working as far as checking compiles. OTOH they are unable to push releases to GitHub and we don't have other options rn D: so here we will discuss how to push releases to GitHub..

[x] Put a separate repo which Appveyor and Travis can deploy to.
[ ] Keep spamming commits and perfect build pushes. Travis is only able to push releases for Linux rn, as in v1.2 is using Travis builds for Linux, Windows was locally compiled BTW.

Patch solution:
create a separate branch which the CI systems will keep up to date with master by compiling the master branch, then checking out the build branch and then commiting instead of pulling, then pushing it to the branch. Ta-da! done :1st_place_medal: : 3

Will be releasing 1.2.1 with a scaffloded version of this

hm
further more, electron-packager will also resolve the always passing even when it fails :3

Linux deploys are working with CircleCI, Travis and AppVeyor will probably be deploying to S3 soon :)

I'm setting up S3, the commit will come and close this, but there's a problem with macOS tho D:

AppVeyor won't be deploying to S3 lolz, apparently I didn't notice that AppVeyor already uploads artifacts to its' servers.


Can't set limit in body parser

I'm trying to set a "limit" with the body parser library (using express) and it is not working due to that the "routing-controller" loads the bodyParser.json() with empty options.
example:
this.app = createExpressServer({
            defaultErrorHandler: false,
            routePrefix: '/api',
            controllers: [ appPath + '/src/controllers/*.js'],
            middlewares: [ appPath + "/src/middlewares/*.js"]
        });
this.app.use(bodyParser.json({limit: '20mb'}));

This is not working because the bodyParser is called first with empty options by "JsonController" or "JsonResponse" decorators.

Also I've noticed, that if I'm not using @JsonController or @JsonResponse, when I'm trying to use to populate a @Body param with a class it is not working. example:
post(@Body() candidate: CandidateForm)
If the controller class doesn't have @JsonController or the method doesn't has @JsonResponse, the candidate variable is not populated at all and remain empty.

So I've manage to overcome this by configuring my own Express server and then using useExpressServer.
At the moment it is not possible to work with createExpressServer if you need to configure the body-parser json method.
@pleerock If you think that need to add the ability to configure it via createExpressServer also, I can help you out and add this feature.
Thanks,

It is simple - if you don't have a special requirements, you use createExpressServer but if you need some middlewares you use useExpressServer which acts as a middleware and attach it into app.use chain.
Also you can use global middlewares and configure there your 3rd party middlewares to work with routing-controllers.

@19majkel94 author is talking about these lines. Right now body-parser will be enabled anyway without configuration.
If we configure body parser on a global level, wont these lines of code override body parser of the currently executed route with empty configuration?

@pleerock ParamOptions (and ParamMetadataArgs) have property parseJson - shouldn't that prevent from parsing the body by body-parser?
I would like to see a global option in useExpressServer like useDefaultBodyParser: false (default true) which disable that lines and lets you configure the middleware by yourself. It's better user experience than forcing users to configure it by themselves like with @Session decorator.
Or the second option - global body-parser settings in useExpressServer. But it might have weird structure (json, text, urlencoded) so it's better to stay with user-controlled middlewares.

parseJson is not used in body.... Okay I have fixed this issue in #119 . For having separate useDefaultBodyParser please create separate issue or direct PR :D

there is special options for this purpose in 0.7.0 now

Hi @pleerock. Thank you for your work.
Sorry but, I haven't figured out yet what is exactly the solution you came up with for solving this issue. Would you be kind and please explain to me what are those "special options in 0.7.0" you mentioned before that could stop "routing-controllers" to load "bodyParser.json()" with empty options?.

Hi @pleerock . routing-controllers is really great work. Thanks you for developing this piece of software.
I have the same issue as the topic creator. I post images as base64 and with createExpressServer() I am not able to update the limits of bodyParser. Tried to switch to useExpressServer() but then all of my requests just dont get answered anymore in case of an error (e.g. JWT expired). Using "authorizationChecker" and am returning a "UnauthorizedError" there.
So I dont know how to make useExpressServer() work for me to have the same behaviour as createExpressServer() and I dont see a chance to use createExpressServer() without the information how to configure bodyParser correctly.
Desperately need your help here. Would be awesome if you could elaborate on your latest statement from 22 May 2017, what kind of option you have integrated.
Thanks in advance.


Implement archived e-petitions

Basic implementation of archived e-petitions - will be fleshed out more by later stories.
https://www.pivotaltracker.com/story/show/95512438

Hmm, not sure why it's failing - works locally. I'll investigate.

LGTM :+1:


Major refactoring of the code base and project structure

Both code base and project structure should be refactored so that:

[x] remove font assets to comply with licenses
[x] all the code to be in one script file
[x] use global and local variables wisely
[x] use functions to encapsulate config, install and other stack tasks
[x] ask user's confirmation beforehand for each stack task
[x] add option to skip user questions and run all tasks ./stack -a
[x] remove opinionated and unnecessary tasks

closed via #06dea16


Release v0.3.0

Waits on the following PR to be merged

[x] merge PR #10

@o-lim since the last PR got merged, can we release?

@o-lim since the last PR got merged, can we release?

Sure, that sounds good.


[ISSUE-7014]Replace the usage of the "instanceof" operator by a catch block.

Description
fix [ISSUE-7014] [https://github.com/apache/iotdb/issues/7014]
Content1 ...
Replace the usage of the "instanceof" operator by a catch block.
Content2 ...
Content3 ...

This PR has:

[ ] been self-reviewed.

[ ] concurrent read
[ ] concurrent write
[ ] concurrent read and write

[ ] added documentation for new or modified features or behaviors.
[ ] added Javadocs for most classes and all non-trivial methods.
[ ] added or updated version, license, or notice information
[ ] added comments explaining the "why" and the intent of the code wherever would not be obvious
for an unfamiliar reader.
[ ] added unit tests or modified existing tests to cover new code paths, ensuring the threshold
for code coverage.
[ ] added integration tests.
[ ] been tested in a test IoTDB cluster.

Key changed/added classes (or packages if there are too many classes) in this PR

@HTHou Is this fix right? those check failures seem to have nothing to do with fix modification


Add support to read&wrtite Grail segment-feature type of configuration

What this PR does / Why we need it:
Added support to read and write the Grail segment-filter configuration. To use it, the MONACO_FILTER_SEGMENT environment variable needs to be present.
Special notes for your reviewer:
Does this PR introduce a user-facing change?

Approved. However, we need to fix the naming in a follow-up PR as soon as we have the final name we should use.
Requirement: This PR must be merged using Rebase on main to keep the commits separate.

Agree.


Fonts not copied correctly with Android Gradle Plugin 4.1.0

[ ] Review the documentation: https://github.com/oblador/react-native-vector-icons
[ ] Search for existing issues (including closed issues): https://github.com/oblador/react-native-vector-icons/issues

Environment
Android, android-gradle-plugin 4.1.0 (works fine with 4.0.2)

Description
Try to do a build with selective font inclusion:
./android/app/build.gradle
// Needed to shrink APK with react-native-vector-icons - don't include all the font files
project.ext.vectoricons = [
        iconFontNames: [ 'Entypo.ttf', 'FontAwesome.ttf' ] // Name of the react-native-vector-icons fonts to copy
]
apply from: "../../node_modules/react-native-vector-icons/fonts.gradle"
// End of react-native-vector-icons stuff

Reproducible Demo
Let us know how to reproduce the issue. Include a code sample, share a project, or share an app that reproduces the issue using https://snack.expo.io/. Please follow the guidelines for providing a MCVE: https://stackoverflow.com/help/mcve
I think this is similar to https://github.com/facebook/react-native/pull/30177

The problem is going to be somewhere in here but my gradle-fu is not quite strong enough to fix it:
https://github.com/oblador/react-native-vector-icons/blob/3458ae8e0d54f3fea821bfc8f5bbb5b67718e60f/fonts.gradle#L42-L56

Currently, the creation and addition of tasks to the Task Graph are dependent upon the project to be evaluated while Gradle is building i.e gradle.projectsEvaluated. In simpler terms, This task is being created while the Gradle build is in the execution phase due to which the task to copy the fonts was not being added to the TaskGraph(of tasks to be executed).
Solution:
see: #1271
The listener to the project evaluated is now removed. Now, the tasks are added to the TaskGraph while in the configuration phase, thus our copy{}IconFonts task can be run in the execution phase of Gradle Build.

I confirm #1265 fixes this, here is my patch-package file if anyone needs it:
(base) mike@kunashir:~/work/Kullki/ksocialscore/packages/public-app (rebranding) % cat patches/react-native-vector-icons+7.1.0.patch
diff --git a/node_modules/react-native-vector-icons/fonts.gradle b/node_modules/react-native-vector-icons/fonts.gradle
index 490756c..72a4dce 100644
--- a/node_modules/react-native-vector-icons/fonts.gradle
+++ b/node_modules/react-native-vector-icons/fonts.gradle
@@ -7,7 +7,6 @@ def config = project.hasProperty("vectoricons") ? project.vectoricons : [];
 def iconFontsDir = config.iconFontsDir ?: "../../node_modules/react-native-vector-icons/Fonts";
 def iconFontNames = config.iconFontNames ?: [ "*.ttf" ];

-gradle.projectsEvaluated {
     android.applicationVariants.all { def variant ->
         def targetName = variant.name.capitalize()
         def targetPath = variant.dirName
@@ -55,4 +54,3 @@ gradle.projectsEvaluated {
             }
         }
     }
-}


Shortcuts stopped worked

Describe the bug
Lately the Shortcuts stopped working, I see this error:
This entity is no longer being provided by the dreame_vacuum integration. If the entity is no longer in use, delete it in settings.
All of my configured shortcuts show the same behaviour.
I am running the latest build v2.0.0b16
Expected behavior
I used these shortcuts for quite a while without a problem
Additional Information (please complete the following information)

Model Name [e.g. dreame.vacuum.p2028]: Dreame L20 Ultra
Firmware Version [e.g. 1156]: 4.3.6_1639
Home Assistant Version: 2024.8.1
Configuration Type [With or without map support]: With Map
Errors or warnings shown in the HA logs (if applicable):

Can you see those shortcuts from the app?

Yes, sure... Sorry, I forgot to mention that!

In the v2.0.16, I have added some extra information about the shortcut tasks for the vacuum entity attributes and that may have broke it. Can you check also the vacuum entity attributes for any presence of shortcuts? Also I need some logs to get more information about the issue and why it might be happening.

The entities are still there, but they show the red circle with the exclamation mark ("This entity is no longer being provided by the dreame_vacuum integration").
I sure will provide any needed logs, but could you help me how to create/find them.

I renamed one of my shortcuts and now all are back and working again. Thank you @Tasshack  for your time!


Similar to `reg.getFitnessScore();

Hello! We have used your previous work, Fast_GICP, in our project and it performed very well. Therefore, we would like to try your new work, small_gicp. However, does it have a function similar to reg.getFitnessScore();?

In RegistrationResult, there are two metrics that may be used as an alternative for getFitnessScore().

num_inliers represents the number of source points with valid correspondences (i.e., "num of overlapping points").
error represents the final registration error (sum of distances between corresponding points)

Hello! I’m glad that the metrics you provided are usable. However, we still have one question: both smallgicp and fastgicp exhibit a significant fluctuation in runtime, varying from approximately 100ms to 1000ms on the same device running the same program（Average Times）. I’m unsure how to adjust the program to achieve maximum efficiency.

It may stem from data association, which sometimes causes an oscillation of the objective function. A quick fix is to set the maximum optimization iteration to a small number (e.g., 10 is sufficient for most cases). If you could provide example data, I can try implementing an oscillation compensation algorithm.

Okay, I tried the method you suggested (reducing the number of iterations), and it indeed achieved a relatively good result. In fact, we are using this algorithm as the final step in our relocalization algorithm. The effect might not be very noticeable when applied to a single dataset, but the change in overall processing time can be quite significant. The following two point cloud frames are from our test data: on our i7 10th generation device, the processing time is approximately 400ms to 900ms (with 10 iterations).
data.zip


addition and refinement to search query posthog properties

Adds search query ranking to posthog event
Adds domain to provide full URL for current url and select url, at specific request (Angela wanted this in addition to default url info that is captured by posthog event)
Tested in both debug and build with host on local server.

Also couldn't find what the hooks.beforeNavToSelectedSuggestion method does, but the variables look like they should be set properly

Method will be passed in as a parameter when the plugin is called from gsa-docs repo, e.g. https://github.com/arup-group/oasys-gsa-docs/blob/GSA-6084-posthog-analytics/docs/src/.vuepress/config.js#L91


Laser Pointer/Mouse Cursor Alignment Problems

HI. I had been successfully using v3.5 for a while. I upgraded to v5.1 and started noticing the issue below so I did a fresh install with v3.5 and now have the issue with v3.5. I don't think had anything to do with v5.1 but figured I would mention it.
The problem is that the laser pointer with my rift/touch setup and on screen mouse cursor do not always line up. In the center of the screen they are at the same point but toward the edges they are inches apart. It's almost like there is a correction for a curved screen so I played around with that. My GUI is always flat despite hitting F4 numerous times and I tried changing  to from Curved to Flat in the vr_settings but that didn't change anything - still flat projection GUI with laser/cursor pointer issue.
Any ideas? Many of the menu items are workable like this but the scrolling list menus like girl selection and  positions selection do not seem to work even with both the mouse and laser both in the selection button. Any help would be appreciated!
EDIT- PS my fresh install had no other mods except VR and basic mods like uncensor and translation - no  IPA mods.

F4 only works in seated mode for the screen in front of you.
Regarding the issue -- it's probably a resolution issue, which, in theory, should already be fixed, but apparently not entirely. Do you have a single screen setup? Are you playing in fullscreen or windowed? (Try the other one, respectively) Maybe also try different screen resolutions. Also check your vr.log for any suspicious messages.

Huh - interesting, I used to always play in 1280 X 720 full screen. But I tried 1280 X 720 windowed and the problem went away. Don't know why it was different before but I can't argue with the results. Thanks for the suggestion.
Another different issue I have been having, not specific to 5.1 but in general I seem to occasionally warp someplace, perhaps outside my Guardian System boundary, and the screen goes solid blue except for the Guardian System boundary, and I can't get back into the game and I have to quit the game from task manager. Very frustrating mid-game. Any idea of whats going on and how to get back into the game when it happens?