Ascendex - fetching non existing PERP markets

Describe the bug
Getting an unexpected websocket error and unhandled error after setting up ETH-PERP as a spot market.
2021-06-09 02:34:22,332 - 3260 - hummingbot.connector.exchange.ascend_ex.ascend_ex_api_order_book_data_source - WARNING - Unexpected error with WebSocket connection. Retrying in 5 seconds. Check network connection.
2021-06-09 02:34:22,334 - 3260 - hummingbot.core.utils.async_utils - ERROR - Unhandled error in background task: 'dict' object has no attribute 'message'
Traceback (most recent call last):
  File "/home/ubuntu/ascendex/hummingbot/core/utils/async_utils.py", line 9, in safe_wrapper
    return await c
  File "/home/ubuntu/ascendex/hummingbot/core/data_type/order_book_tracker.py", line 178, in _init_order_books
    self._order_books[trading_pair] = await self._data_source.get_new_order_book(trading_pair)
  File "/home/ubuntu/ascendex/hummingbot/connector/exchange/ascend_ex/ascend_ex_api_order_book_data_source.py", line 106, in get_new_order_book
    snapshot: Dict[str, Any] = await self.get_order_book_data(trading_pair)
  File "/home/ubuntu/ascendex/hummingbot/connector/exchange/ascend_ex/ascend_ex_api_order_book_data_source.py", line 99, in get_order_book_data
    f"Error fetching OrderBook for {trading_pair} at {EXCHANGE_NAME}. "
AttributeError: 'dict' object has no attribute 'message'

Upon checking AscendEx exchange, the ETH-PERP or any PERP market doesn't exist however our bot recognizes these markets.
Steps To Reproduce
Here are the steps to reproduce the issue (see attachments in the section below):

Create a pure market-making strategy using AscendEx as a connector.
When the market is asked, check the autocomplete list and use any market associated with PERP, for example, ETH-PERP or BTC-PERP.
Start the strategy and notice that you will immediately get an error.
...

Screenshots

Release version
0.39.0
Attachments
logs_maxorder.log
WARNING: Do NOT publish any exchange API keys or your wallet's private key. Whoever has access to them may steal your assets!
Optional: your discord username:
┆Issue is synchronized with this Clickup task by Unito

Fix has been applied on the upcoming Hummingbot v1.3


Xbox soundtrack ripping support, insignia integration?

No other Xbox dashboard that I know of currently supports this (other than the stock dashboard). This would be high on my feature request list, in addition to integration with Insignia when that launches, so there'd be no need to keep the original dashboard.
This integration with Insignia would require NevolutionX to be split into two XBEs: xodash.XBE would be the Insignia portion of the dashboard, with the main portion of the dashboard being called default.xbe or Xboxdash.xbe

Would you mind splitting this in two? XBL and audio CD ripping don't have much in common.
Audio CD ripping is not a bad idea, I'd love to have that too. Not sure where to start, but we'll get there eventually.
Insignia support is trickier. Interfacing with the standard xodash.xbe would be feasible (almost simple), but replacing xodash.xbe would probably result in an overwritten file anytime an update check is performed.

No problem. Ripping to the Soundtracks database would be huge.... as none of the other dashboards besides the OG Dash does this.


computeCentroids() function deprecated.

threex.terrain.js should be updated for compatibility with a more recent revision of the three.js library.

Duplicate issue.


Package request: battery-stats

simple utility for collecting statistics about the laptop battery charge
It will query ACPI at regular intervals and write the results to a log file.
It also contains a simple plotting utility to show the battery charge over time.
Metadata

homepage URL: https://github.com/petterreinholdtsen/battery-stats
license: gpl2
platforms: linux

I might be able to add this to nixpkgs soon, writing this comment so I don't forget


Custom executor handler

This moves from using a raw queue of executors and relying on manually adding them back, to a wrapper that automatically returns them to the pool once the handler has been dropped.

This fixes #18


put /collection/id1,id2 - are ids realy necessarry in url (thoughts)?

Hi. An example with PUT /products/1,2,3 looks neat with small ids, but with  long ids (MongoDB for example with id length 24 characters) it looks not so funny PUT /products/507f1f77bcf86cd799439011,507f1f77bcf86cd799439012,507f1f77bcf86cd799439013.
For example, if you will try to update a simple field { active: 1} for many items with mongodb ids, your request will be almost 1,5-2 times larger, than it can be.
Also it may be a surprise sometime to find out that most popular servers have headers limits much smaller than body size and it would be impossible to update more than ~340 mongodb records with default nginx configuration
I propose to allow updating multiple resources with url PUT /products
PUT /articles
{
  "articles": [{
    "id": "507f1f77bcf86cd799439011",
    "title": "To TDD or Not"
  }, {
    "id": "507f1f77bcf86cd799439012",
    "title": "LOL Engineering"
  }]
}

It will reduce a request size twice in some cases
Server side implementation have to determine ids from body all the same, so ids in url are unnecessary. Without ids in a message header servers will work faster in the most cases

Also according this logic I don't see a reason to keep ID in url for updating a single resource

As part of the new Bulk extension, we've removed the requirement that bulk PUT and DELETE requests address multiple individual resources:

Multiple resources can be updated by sending a PUT request to a URL that represents a collection of resources to which they all belong.

And:

Multiple resources can be deleted by sending a DELETE request to a URL that represents a collection of resources to which they all belong.

Instead the type and id of each resource must be included in the request payload, as described.


Aselunar/start prod

Added start-prod script to package.json

Closed because there were unexpected errors on this branch. Currently testing to try to resolve them.


feat: add custom objective function to lightgbm learners

add support for custom objective function in lightgbm learners
Users in the scala API will now be able to supply a custom loss function for training, which will need to output the gradient and hessian matrix.
As part of this PR, the LightGBMBooster and LightGBMDataset classes have been improved and moved under the booster and dataset folders, and some of the files related to parameters have been moved to a separate params folder in order to organize the code better since there are so many files in lightgbm directory.


Unable to add child in latest version 2.0.2

Hi,
I am the fan of genealogy. It saved a lot of my valuable time. I have used 1.5.0 till now. My Application was worked very well when i was in 1.5.0 version.
After updating to gem to latest version ( 2.0.2 ), i am not able to adding a child to user. It is throwing an exception called "User1 Can't be father of  User2".
Please resolve the issue and let me know.
Thank you!

hi,
please provide the exact error backtrace. I see different exception in your snapshot...
Consider also that genealogy 2 is a major upgrade and can have backward incompatibilities. In this case it seem an ineligibility related problem. In genealogy 2 ineligibility checks are enabled by default at pedigree level. Turn it off with has_parents ineligibility: false. I've just got aware now that there is a typo in the doc about this: it wrongly says ineligibility: :off... i'm going to correct it

Sorry, i attached wrong screenshot. Now i edited question with correct screenshot.
With your suggestion, i kept has_parents ineligibility: false  in the model. Now it is working fine.
Thank you!

Ineligibility is not an easy feature and, most likely, perfectible. I'm working on that. To answer your question first of all re-enable ineligibility and run current_user.ineligible_children. Is your child included in the list? If so have a look here and tell me, please, if it make sense to you...

@namanipradeepkumar any feedback?


Refined mass deletion functionality and added GUI for Archival / Main list view

Added test cases for new mass delete functionality
Fixed bugs for new delete command implementation
Implemented GUI for archival / list view
Refined property event listeners for internship diary
Added App logo and renamed stage title accordingly

Everything looks good!!


AoT compilation fails because of CookieOptions

When I try to compile an angular 2 application with CookieService using the AoT compiler, it doesn't compile because of the following error:
..../app.module.ngfactory.ts(436,82): error TS2346: Supplied parameters do not match any signature of call target.

When I take a look at that line, it looks like this:
if ((this.__CookieService_54 == (null as any))) { (this.__CookieService_54 = new import36.CookieService(); }

According to IntelliSense, the CookieService takes one required argument named defaultOptions, but it isn't provided by the compiled code. In my NgModule, I provide CookieService like this:
@NgModule({
    imports: [
        BrowserModule,
        SharedModule,
        FormsModule,
        routing
    ],
    declarations: [
        AppComponent,
        ...frameworkComponents,
        ...viewComponents,
        LoginComponent],
    providers: [
        appRoutingProviders,
        CookieService
    ],
    bootstrap: [AppComponent]
})

Thank you for the detailed report, I will inspect this as soon as possible.

Solved by #20


dangerous name collision after renaming

The extract of
type capture (a:Type) 'a = 'a*a
is
type (' a, 'a) capture =
('a * ' a)

https://github.com/FStarLang/FStar/commit/72104b586a62067378a7b9baa3e1caed82bbdead

Nik suggested emitting (cryptic) realnames to OCaml. Realnames are guaranteed to contain distinct numbers and hence adding/removing a tick shouldn't matter.
Another solution could be to make sure that the functions used to extend the context with a local binding can check current collection of OCaml bound vars and fail if the OCaml name being added already exists. The error message should contain the F* location of the error.
If it is always the case that such collisions cause compilation errors in OCaml, it might be fine to procrastinate on this issue.

There is some value in keeping the OCaml code readable, though that may be just wishful thinking on my side.

Current example:
$ cat X.fst
module X
type capture (a:Type) 'Aa = 'Aa*a

$ cat X.ml
open Prims
type ('Aa,'Aa) capture = ('Aa,'Aa) FStar_Pervasives_Native.tuple2

Another worrying clash:
$ cat B.fst
module B

let struct = 1
let struct_ = 2

type initializer = unit
type initializer_ = int

$ cat B.ml
open Prims
let struct_: Prims.int = Prims.parse_int "1"
let struct_: Prims.int = Prims.parse_int "2"
type initializer_ = Prims.unit[@@deriving show]
type initializer_ = Prims.int[@@deriving show]

Another worrying clash:
$ cat B.fst
module B

let struct = 1
let struct_ = 2

type initializer = unit
type initializer_ = int

$ cat B.ml
open Prims
let struct_: Prims.int = Prims.parse_int "1"
let struct_: Prims.int = Prims.parse_int "2"
type initializer_ = Prims.unit[@@deriving show]
type initializer_ = Prims.int[@@deriving show]

If I recall correctly, there is a very limited notion of lexical environment in the OCaml code-generation -- the initial intent of the extraction was to reuse the lexical structure of F* on the basis that both being lexically scoped, there was no need to re-do name disambiguation.
This assumption is broken by keyword-avoidance, but also by inline_let's, e.g.
let x = 0 in
[@inline_let] let y = x in
let x = 2 in
(y, x)

↑ this would previously print (x, x), until disambiguation code was added to the OCaml printer to make sure no two local let's in the same scope have the same name. This results in ugly x0, x1, x2, and also makes it harder for kremlin to infer which variables could be updated in-place (a long-standing feature request in kremlin).

Someone hit this bug again in Zulip.
Here's a minimized example:
val r: unit -> a:Type -> f:(a -> a) -> int
let r _ _ _ = 0

val g: int -> int -> int
let g _ _ = 0

val ko: int -> int
let ko a =
  let a = a in
  r () int (g a)

The OCaml extraction of the last function captures a in g a:
let (ko : Prims.int -> Prims.int) =
  fun a -> let a1 = a in r () () (fun a1 -> (Obj.magic (g a1)) a1)

I'm marking this for the v1 release, it's serious. See also #1783.

Looking into this.
For the record, the last example now produces:
open Prims
let (r : unit -> unit -> (Obj.t -> Obj.t) -> Prims.int) =
  fun uu____430  -> fun uu____431  -> fun uu____432  -> Prims.int_zero
let (g : Prims.int -> Prims.int -> Prims.int) =
  fun uu____450  -> fun uu____451  -> Prims.int_zero
let (ko : Prims.int -> Prims.int) =
  fun a  -> let a1 = a  in r () () (fun a21  -> (Obj.magic (g a1)) a21)

Which looks correct to me.
Note, g a1 gets magic'd since the r cannot be given a polymorphic type after translation to ML (it's not prenex quantified).
I'm not yet sure why why it also gets eta-expanded.

I'm not yet sure why why it also gets eta-expanded.

See maybe_eta_expand in FStar.Extraction.ML.Term and this commit 21d544ce001a4ea4183199f32fefd99d1c1139f8

Just clarifying @protz's remark above for my understanding: https://github.com/FStarLang/FStar/issues/310#issuecomment-506758900
Since 69bde008419a9361bccad52ce522fef4cc20d12a (Jonathan's work in 2017) we generate local names in the ML AST that are unique for a scope to avoid name capture. This is part of FStar.Extraction.ML.UEnv. The actual printing of OCaml terms (in FStar.Extraction.ML.Code) is (correctly) unaware of any of these scope or name capture isseus.

FYI, while we for the most part produce names that are unique in a scope, several utility functions bypass the protections that are in place and generate names in an ad hoc fashion. I plan to revise name generation in the extraction pipeline to all go through the single mechanism used in extend_bv to extend a scope with a name that is fresh in that scope.

FYI, my previous post about ko being extracted correctly was just a coincidence. Name capture due to eta expansion is still possible in master. For example, this program
module Bug310
val r: unit -> a:Type -> f:(a -> a) -> int
let r _ _ _ = 0

val g: int -> int -> int
let g _ _ = 0

val ko: int -> Tot int
let ko a =
  let a21 = a in
  r () int (g a21)

Extracts incorrectly to
let (ko : Prims.int -> Prims.int) =
  fun a  -> let a21 = a  in r () () (fun a21  -> (Obj.magic (g a21)) a21)

However, with the fix in nik_310, this now produces
let (ko : Prims.int -> Prims.int) =
  fun a  ->
    let a21 = a  in r () () (fun uu____545  -> (Obj.magic (g a21)) uu____545)

See https://github.com/FStarLang/FStar/blob/master/tests/bug-reports/Bug310.fst
and https://github.com/FStarLang/FStar/blob/master/tests/bug-reports/Bug310.ml.expected


Only shows a single frozen image at start

Using my Pixel 2 I can get scrcpy to start and connect to my phone. The mirrored image of my phone pops up on my Windows 10 PC and ... then nothing. The image is just static and won't ever change from that first image when the window opened.
For mouse clicks something similar happens: it registers only a single click and none thereafter.
(Btw, the mouse click always seems to register as a long-press, no matter how fast I click)

That's unexpected (of course).
Could you try your device in another computer or OS, and another device on the same computer?

Just tried it with a Samsung Galaxy (Android 7) and there it works. Tested my Pixel 2 (Android 9) on another Windows 10 PC and there it works :-/
Rebooted the PC and unfortunately that also didn't solve the issue.
Btw, I saw on the other PC that closing the mirror window also closed the console window, on my PC it stays open so I'm guessing it hangs somewhere. Any debugging I can do?

What if you use a lower definition or bitrate?
scrcpy -m800 -b2M

I replaced SDL2.dll in 1.8 with the one from 1.3 and it's working perfectly now.

Just retested with 1.8 and everything works perfectly now. Closing. Thanks!


Default to "prompt" when typing after /dream

This is common practice across the board and would greatly improve usability

I was wondering if that was possible, still learning all the new app command features.
I'll try to get this done quickly as it should be simple.

fixed! but the issue is apparently that you can't have a default value for the prompt field, so the default prompt setting will now do nothing.
I think this way is ultimately better because the command is much easier to write by hand.


Need to visualise live OSM

I'm submitting a feature request.
Brief Description
A lot of osmcha users want to see the actual live OSM data on the map as a separate layer.

What is the motivation / use case for this feature?
This helps them see what is the current status of that particular area. Changeset map only compares the changeset with previous version.

I think it would be good to have the default OSM tiles style in changeset map. I've already felt the necessity to see how the actual map looks like.

Related ticket on changeset-map.
cc: @rasagy


[Bug] Gas limit exceeded on simple for loop

Bug report
I am running a rather simple for loop for getting some on chain values (by using the specific contract type) as follows:
export function getContractBondMaturities(contract: BondContract): Array<BigInt> {
  const params = contract.maxParametersLength()
  let response: BigInt[] = []
  for (let i = BI_ZERO; i.lt(params); i.plus(BI_ONE)) {
    const maturity = contract.maturities(i)
    response.concat([maturity])
  }
  return response
}

The maxParametersLength() call returns a 3 (so is just a 3 times loop). And I am getting: Gas limit exceeded. Used:<PHONE_NUMBER>157062
Full log output below.
I am currently running a local graphnode image using docker on a macOS M2 pro (the image is running through emulation since I believe there is no support for linux/arm64 at the time of writing).
In any case, I have not had any issues due to this and everything has been working really good until I hit this case.
This, for example, works fine:
const a = [contract.maturities(BigInt.fromI32(0))]
const b = [contract.maturities(BigInt.fromI32(1))]
const c = [contract.maturities(BigInt.fromI32(2))]
factory.maturities = a.concat(b).concat(c)
factory.save()

So, I will expect the for loop to work fine and get the values I am trying to fetch.
Thanks in advanced!
### Relevant log output
2023-03-21 23:28:27 Mar 21 22:28:27.153 ERRO Subgraph failed with non-deterministic error: failed to process trigger: block #25 (0x2d8f…fe41), transaction d596183b51a03249fa8951e9c13b5227da3c6de8e5b7c4c0bc53e09e3b7b7504: Gas limit exceeded. Used:<PHONE_NUMBER>157062  wasm backtrace:     0: 0x3623 -<EMAIL_ADDRESS>          1: 0x3abb - <unknown>!src/mappings/factory/updateFactoryBondOnMint      2: 0x4136 - <unknown>!src/mappings/bond/handleTransfer       , retry_delay_s: 480, attempt: 2, sgd: 6, subgraph_id: QmPE6TzvpCsNZKtEjGrEXhps61ayV4yqqv7jE1kvvzGPQ7, component: SubgraphInstanceManager

IPFS hash
No response
Subgraph name or link to explorer
No response
Some information to help us out

[ ] Tick this box if this bug is caused by a regression found in the latest release.
[ ] Tick this box if this bug is specific to the hosted service.
[X] I have searched the issue tracker to make sure this issue is not a duplicate.

OS information
macOS

Sorry, I keep forgetting mappers are compiled to web-assembly and things are by no means that simple...
Rewriting the for loop seems to work.
export function getContractBondMaturities(contract: BondContract): Array<BigInt> {
   const params = contract.maxParametersLength().toI32()
   let response = new Array<BigInt>(params)
   for (let i = 0, k = params; i < k; ++i) {
      const maturity = contract.maturities(BigInt.fromI32(i))
      response[i] = maturity
   }
   return response
}

Congrats on this amazing service!


[Feature request] Documentation

I am just getting started with leap and flit, and I don't quite understand what flit does that leap doesn't do.
OK, as I wrote that sentence, I realised that with flit you use one search character, not two. It would be good for that – and other things – to be written in the README, and for an official "help" document to exist.
I also don't actually know how to complete the search in flit and get back to normal editing.

I don't quite understand what flit does that leap doesn't do

I guess "f/F/t/T motions" is pretty obvious, isn't it?

I also don't actually know how to complete the search in flit and get back to normal editing.

The exact same way as in Leap (esc or entering a label, or pressing any non-label key and continuing editing).

The exact same way as in Leap (esc or entering a label, or pressing any non-label key and continuing editing).

Locally I'm not seeing that. I've attached a screen recording of what I see.
Firstly I press f then : then the f label and then...leap/flit seem to sit there waiting for more input...I have to hit Esc to get to where I want. What am I missing here? Is it the fact I had groups visible? I don't see how that matters TBH, I pressed f, I made my choice...
https://user-images.githubusercontent.com/1597820/222487708-d9534e20-b1c3-4e6a-b51f-e00b2172cb91.mp4

The other thing I notice is that with leap I can press Tab and it has the same effect as Esc but in flit it seems to just jump back instead...

Oh I'm using LazyVim if that makes any difference: https://github.com/LazyVim/LazyVim/blob/main/lua/lazyvim/plugins/editor.lua#L175

@briandipalma
You can move forward by repeatedly pressing f (or t for a t invocation), like clever-f does. "f" over the first target is just a "virtual" label in this case, under the hood f initiates traversal mode (that is why Tab reverts the jump).

So to select the first match and exit flit I can use either Esc or Tab for the second match I must hit the search trigger key a second time (f or t) then the Esc key for every other match I just need to type the label?
I'll throw a few sentences together tomorrow for the README along with a note on navigating groups and traversal mode as I think that might be helpful for users/casual browsers.

@gsinclair https://github.com/ggandor/flit.nvim/pull/26 to close this issue? I don't know if there's much else needed to talk about apart from maybe groups. I feel they are covered in leap OK already.

Still, there's no point in copying the "usage" sections of Leap in a condensed form. No Telescope extension starts by explaining how to use and configure Telescope. The "clever-f" behavior could be explained in a sentence or two though, I agree, that is the specialty here.

FWIW I've never heard of "clever-f" before this thread.

It's linked right under "Features".


resource allocation

These are the code base changes to support the new resource allocations; something that I wasn't aware was that we didn't support walltime formulas, only memory - now we do.

coverage: 92.93% (-0.008%) from 92.938% when pulling 36de0160209162e12f0807f38b0c0b87d4224c8a on antgonza:resource-allocation into 027613fef9d790caca5dd74e885af4a9f542d832 on qiita-spots:dev.


[3057] - Return course count in meta object

Context

The inclusion of non-standard meta-information should be returned in a 'meta object'. See https://jsonapi.org/format/#document-meta
This change is required to fix the inaccurate results page count on Find Teacher Training (a separate PR for Find Teacher Training required, to follow)

Changes proposed in this pull request

Return course count in global metal object
Do not rely on the header 'Total' for accessing course count. This appears to go against the JSON API spec.

Checklist

[ ] Make sure all information from the Trello card is in here
[ ] Attach to Trello card
[ ] Rebased master
[ ] Cleaned commit history
[ ] Tested by running locally

 Fix results page total count


Installing on FreeBSD without a "regular" desktop environment

I'm running FreeBSD with Openbox loaded through ~/.xinitrc by calling exec dbus-launch openbox-session at the end of it, rather than installing a full-blown desktop environment like Gnome / Cinnamon / MATE.
Launching Openbox this way fixed a number of issues, e.g. the trashcan and allowing me to change folder icons.
What remains is getting Nemo extensions to work, this one in particular.
I have managed to install all Python dependencies, so that calling pip list gives me a list that includes the following python packages:
git-nautilus-icons  2.0.0
NEMO                3.8.0
pip                 20.2.3
PyGObject           3.38.0

Running ls -la -R in /usr/home/niklas/.local/share/nemo-python then produces this:
total 5
drwxr-xr-x   3 niklas  niklas   3 mars  9 14:51 .
drwxr-xr-x  16 niklas  niklas  19 mars  9 14:39 ..
drwxr-xr-x   3 niklas  niklas   4 mars  9 14:51 extensions

./extensions:
total 38
drwxr-xr-x  2 niklas  niklas      3 mars  9 14:51 __pycache__
drwxr-xr-x  3 niklas  niklas      4 mars  9 14:51 .
drwxr-xr-x  3 niklas  niklas      3 mars  9 14:51 ..
-rw-r--r--  1 niklas  niklas  33785 mars  9 14:51 git-nautilus-icons.py

./extensions/__pycache__:
total 24
drwxr-xr-x  2 niklas  niklas      3 mars  9 14:51 .
drwxr-xr-x  3 niklas  niklas      4 mars  9 14:51 ..
-rw-r--r--  1 niklas  niklas  20809 mars  9 14:51 git-nautilus-icons.cpython-37.pyc

Running python git-nautilus-icons.py in /home/niklas/.local/share/nemo-python/extensions then produces:
  File "git-nautilus-icons.py", line 44, in <module>
    gi.require_version('Nautilus', '3.0')
  File "/usr/local/lib/python3.7/site-packages/gi/__init__.py", line 126, in require_version
    raise ValueError('Namespace %s not available' % namespace)
ValueError: Namespace Nautilus not available

However, modifying git-nautilus-icons.py like so:
# A string in sys.argv so that the worker process can identify itself:
WORKER_ARG = 'git-nautilus-icons-worker'
if WORKER_ARG not in sys.argv:
    # Only import the extension modules if we are not the worker process
    if sys.argv[0] == 'nemo':
        gi.require_version('Nemo', '3.0')
        from gi.repository import Nemo as Nautilus
    elif sys.argv[0] == 'caja':
        gi.require_version('Caja', '2.0')
        from gi.repository import Caja as Nautilus
    else:
        gi.require_version('Nemo', '3.0')
        from gi.repository import Nemo as Nautilus

This enables me to run it in command line like python git-nautilus-icons.py without any errors or output at all. I didn't understand how else to run it..
In either case, git-nautilus-icons doesn't show up in Nemo's list of extensions, and there are no git status icons shown when cloning a git repo to a local folder; in other words, I cannot get it to work.
How can I install it so I don't have to modify it, and how can I get Nemo to detect it? Or in other words, how can I get it to work? I really need this...

Ok, so I managed to build the file libnemo-python.so, but it's still not working. When running meson it gave two complaints:
Did not find CMake 'cmake'
Found CMake: NO

and:
Run-time dependency python3-embed found: NO (tried pkgconfig and cmake)

I installed CMake before running ninja, and running ninja seems to have gone smooth:
niklas@TP50:/usr/home/niklas/Hämtningar/nemo-extensions-master/nemo-python/build ninja
[3/3] Linking target src/libnemo-python.so

I also ran sudo ninja install:
niklas@TP50:/usr/home/niklas/Hämtningar/nemo-extensions-master/nemo-python/build sudo ninja install
[0/1] Installing files.
Installing src/libnemo-python.so to /usr/local/lib/nemo/extensions-3.0
Installing /usr/home/niklas/Hämtningar/nemo-extensions-master/nemo-python/build/nemo-python.pc to /usr/lib/pkgconfig

Contents of /usr/lib/pkgconfig/nemo-python.pc:
Name: Nemo-Python
Description: Nemo-Python Components
Version: 4.8.0

prefix=/usr
libdir=${prefix}/lib
pythondir=${prefix}/share/nemo-python/extensions

But I probably need to install the run-time dependency python3-embed. Any idea how to do that?
I might add, I didn't fully understand what I was doing, reading the PKGBUILD from Arch Linux's AUR.. (https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=nemo-extensions-git) But it built the file libnemo-python.so (without me stating what file to build) and put it in a folder which I didn't specify - so something must have gone right?
Full output when running meson below:
niklas@TP50:/usr/home/niklas/Hämtningar/nemo-extensions-master/nemo-python/build meson --prefix=/usr \
                --libexecdir=/usr/home/niklas/Hämtningar/nemo-extensions-master/nemo-python \
                --buildtype=plain
The Meson build system
Version: 0.57.1
Source dir: /usr/home/niklas/Hämtningar/nemo-extensions-master/nemo-python
Build dir: /usr/home/niklas/Hämtningar/nemo-extensions-master/nemo-python/build
Build type: native build
Project name: python-nemo
Project version: 4.8.0
C compiler for the host machine: cc (clang 11.0.1 "FreeBSD clang version 11.0.1 (git@github.com:llvm/llvm-project.git llvmorg-11.0.1-0-g43ff75f2c3fe)")
C linker for the host machine: cc ld.lld 11.0.1
Host machine cpu family: x86_64
Host machine cpu: x86_64
Found pkg-config: /usr/local/bin/pkg-config (1.7.3)
Did not find CMake 'cmake'
Found CMake: NO
Run-time dependency python3-embed found: NO (tried pkgconfig and cmake)
Run-time dependency python3 found: YES 3.7
Run-time dependency libnemo-extension found: YES 4.8.3
Run-time dependency pygobject-3.0 found: YES 3.38.0
Run-time dependency gtk+-3.0 found: YES 3.24.24
Run-time dependency glib-2.0 found: YES 2.66.7
Configuring config.h using configuration
Configuring nemo-python.pc using configuration
Message: |....................................................................
Message: |
Message: |  nemo-python version: 4.8.0
Message: |
Message: |  python version: 3.7
Message: |  targeting lib: /usr/lib/libpython3.7m.so.1.0
Message: |
Message: |  build docs: false
Message: |
Message: |  python extension dir: /usr/local/lib/nemo/extensions-3.0
Message: |
Message: |....................................................................
Build targets in project: 1

Found ninja-1.10.2 at /usr/local/bin/ninja
niklas@TP50:/usr/home/niklas/Hämtningar/nemo-extensions-master/nemo-python/build pkg search cmake
cmake-3.19.6                   Cross-platform Makefile generator
cmake-doc-3.19.6               HTML and Qt Creator helpfiles for CMake
cmake-fedora-2.9.2             Set of cmake modules for fedora developers
cmake-gui-3.19.6               Qt-based GUI for CMake
cmake-modules-webos-1.0.b      CMake modules needed to build WebOS components
gccmakedep-1.0.3               Create dependencies in makefiles using 'gcc -M'
icmake-9.02.08                 Intelligent C-like Maker
ignition-cmake-2.0.0           CMake modules to be used by the Ignition projects
kf5-extra-cmake-modules-5.79.0 Extra modules and scripts for CMake
kms-cmake-utils-6.15.0_1       CMake common files used to build all Kurento C/C++ projects
py37-cmakedoc-1.0.1            Command-line tool to read CMake documentation
niklas@TP50:/usr/home/niklas/Hämtningar/nemo-extensions-master/nemo-python/build sudo pkg install cmake
Lösenord:
Updating FreeBSD repository catalogue...
FreeBSD repository is up to date.
All repositories are up to date.
The following 2 package(s) will be affected (of 0 checked):

New packages to be INSTALLED:
	cmake: 3.19.6
	rhash: 1.4.1

Number of packages to be installed: 2

The process will require 31 MiB more space.
6 MiB to be downloaded.

Proceed with this action? [y/N]: y
[1/2] Fetching cmake-3.19.6.txz: 100%    5 MiB   5.7MB/s    00:01
[2/2] Fetching rhash-1.4.1.txz: 100%  220 KiB 225.0kB/s    00:01
Checking integrity... done (0 conflicting)
[1/2] Installing rhash-1.4.1...
[1/2] Extracting rhash-1.4.1: 100%
[2/2] Installing cmake-3.19.6...
[2/2] Extracting cmake-3.19.6: 100%

This might also help:
https://cmake.org/cmake/help/latest/module/FindPython3.html

Python3-embed is optional, ignore it (it's for older python versions I think.
Installing src/libnemo-python.so to /usr/local/lib/nemo/extensions-3.0

I'm not familiar with your distro - did you build nemo or is it an existing package? Typically we use /usr as a prefix (not /usr/local) - nemo - like meson --prefix=/usr mybuilddir (this applies to all of our packages, and is typically required due to how most C libraries we use are utilized by python).
Check the output of:
pkg-config --variable=extensiondir libnemo-extension

That's the folder libnemo-python.so needs to go into. If it's not there, your python extensions won't get loaded.

I fixed it, see  https://github.com/linuxmint/nemo-extensions/issues/401


Remove simulated dht.

Using a simulated dht offers no advantage, but add the burden of having to maintain it.
Using a simulated dht instead of an isolated test network because of some behaviour is equivalent with ignoring dht problems instead of fixing them or pretending reality is different then it is.
Thus any tests done with a simulated dht are null and void.

Removed


Remove orphaned function declaration in occupancy_grid_node_main.cc

Follow-up to #715, spotted by @CccYunxiao, see #1031.

@wally-the-cartographer merge


UnicodeDecodeError: 'utf-8' codec can't decode byte

$ dodgy ---help                                                         │
Traceback (most recent call last):
  File "/usr/bin/dodgy", line 4, in <module>
    dodgy.run.run()
  File "/usr/lib/python3/dist-packages/dodgy/run.py", line 56, in run
    warnings = run_checks(os.getcwd())
  File "/usr/lib/python3/dist-packages/dodgy/run.py", line 44, in run_checks
    for msg_parts in check_file(filepath):
  File "/usr/lib/python3/dist-packages/dodgy/checks.py", line 72, in check_file
    return check_file_contents(to_check.read())
  File "/usr/lib/python3.6/codecs.py", line 700, in read
    return self.reader.read(size)
  File "/usr/lib/python3.6/codecs.py", line 503, in read
    newchars, decodedbytes = self.decode(data, self.errors)
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xe0 in position 787: invalid continuation byte
$ dpkg -l dodgy                                                         │
ii  dodgy                   0.1.9-3          all              searches for dodgy looking lines in Python code

I got the same issue after doing a pip install dodgy on Ubuntu 18.04 - unfortunately I'm not sure how to begin to fix :-(


Reproduceable benchmarks?

Benchmarks posted in the blog look cool. I guess they are from https://github.com/marvin-j97/rust-storage-bench? If so, it seems like the repo isn't up to date. It'd be best long-term if they were reproducible.

I suggest you add a public domain Shakespeare works (5.6mb) and pick the desired range out of it (wrapping around as needed).
I also got a few changes I'd like to send over (including the above), but I wasn't sure if it made sense given that it was seemingly outdated.

I also got a few changes I'd like to send over (including the above), but I wasn't sure if it made sense given that it was seemingly outdated.

I think it does. If I get around to finishing a rewrite I could incorporate them. That being said, the benchmark repo isn't necessarily outdated (I just need to bump fjall to 2.0), it just has way less and different workloads than I am using now locally.

I opened a PR here

The bench repo's v1 will have standalone HTML exports, and copyable scripts to reproduce each benchmark report.
I'll see that in the future benchmarks will a accompanying HTML report.


[Usage]: The TP improvement is not as expectation

Your current environment
The offline inference of Llama-3-8B with benchmark_latency.py sweeping on 1, 2, 4 cards results:

And the optimum-habana results:

The results show that on 1 card vLLM is greater than optimum-habana. But when inference on multi-card, the TP in vLLM performance gain is not good enough, so that the performance is worse than optimum-habana.
How would you like to use vllm
I want to run inference of a [specific model](put link here). I don't know how to integrate it with vllm.

@JunxiChhen, Vllm performance improvements are planned in SW1.19 version. Please stay tuned.


Support MSRV concept

We tried this out for the #235, but ran into some trouble when dev-dependencies were not able to satisfy the version that the lib can. Since it's not tested while on crates.io, perhaps this is a non-issue, but it does mean that the CI will fail because of dependencies that we currently use for benchmarking. It would be nice to ensure that the tests will run on our MSRV. Any other input welcome here regarding what one would expect of the MSRV information and what might be unexpected or where you would expect to look for information if something isn't going your way when using this dependency.

Is there a target for the level of backwards compatibility? The concept of a MSRV has been discussed before, but the actual minimum version that should be supported has not been, I don't think.
I'll give you some examples to illustrate what I mean (these are "targets" I've seen in other projects before):

Support all rustc versions that are shipped by the Ubuntu LTS repositories (or another distro)
Support the current rustc stable and X versions before it
Support the last X months of rustc stable releases
Don't target anything, just use MSRV to inform users what is supported, change MSRV whenever needed or wanted

All of these have pros and cons. I personally would tend towards not going too far with backwards compatibility as it causes a significant maintenance burden the further you go (and not being able to use new language features is no fun).

At the moment, I'm leaning toward the least stringent which is the last option,

Don't target anything, just use MSRV to inform users what is supported, change MSRV whenever needed or wanted

On the basis that there's not a large usage volume of this crate, and I think knowing more about the breadth of use for this library would be helpful.

I honestly agree, it's the simplest option and unless there's an explicit request for more backwards compatibility, it probably doesn't make sense to overthink it.

Yeah, seems like a good approach for now. Glad for your putting a light on it so it's intentional.


CrashLoopBackOff

I'm trying to setup a shinyproxy on google cloud using helm. But the shinyproxy keeps restarting without getting live with the following error message
$kubectl get events --sort-by=.metadata.creationTimestamp
LAST SEEN   TYPE      REASON              OBJECT                                                MESSAGE
5m36s       Normal    Pulled              pod/shinyproxy-7bc6bdd64c-pfwdh                       Container image "remche/shinyproxy:2.4.1" already present on machine
5m35s       Warning   Unhealthy           pod/shinyproxy-7bc6bdd64c-pfwdh                       Readiness probe failed: Get http://<IP_ADDRESS>:8080/actuator/health/readiness: dial tcp <IP_ADDRESS>:8080: connect: connection refused
5m32s       Warning   Unhealthy           pod/shinyproxy-7bc6bdd64c-pfwdh                       Liveness probe failed: Get http://<IP_ADDRESS>:8080/actuator/health/liveness: dial tcp <IP_ADDRESS>:8080: connect: connection refused
5m42s       Normal    Killing             pod/shinyproxy-7bc6bdd64c-pfwdh                       Container shinyproxy failed liveness probe, will be restarted
93s         Warning   BackOff             pod/shinyproxy-7bc6bdd64c-pfwdh                       Back-off restarting failed container

My setup is on a google cloud cluster version 1.16.13-gke.401
helm repo add bitnami https://charts.bitnami.com/bitnami
helm repo update
helm install ingress bitnami/nginx-ingress-controller

## Add shinyproxy
helm repo add remche https://charts.remche.org
helm repo update
helm upgrade --install shinyproxy remche/shinyproxy -f config.yaml

@mmoisse thanks for the report !
I did not want to set default value because it's infrastructure related, but I agree that the chart should work out-of-the-box with major cloud providers. I use initialDelaySeconds: 30 on my deployments but I would prefer to use values that fit google and al.
I will review the PR ASAP, it seems ok but I prefer to test before merging ;)

Merged, thanks !


release v0.4.8

@JuliaRegistrator register branch=release/v0.4

Registration pull request created: JuliaRegistries/General/71462
After the above pull request is merged, it is recommended that a tag is created on this repository for the registered package version.
This will be done automatically if the Julia TagBot GitHub Action is installed, or can be done manually through the github interface, or via:
git tag -a v0.4.8 -m "<description of version>" a604a31fd647bdbd630f7e54045eec5b42d36e58
git push origin v0.4.8


Move dataProduct and outputPort to servers

To make data contract independent from data mesh / data products, move data products to servers as one possible type:
servers:
  production:
    type: dataproduct
    dataProduct: orders
    outputPort: bigquery_orders_latest_npii_v1

Alternative Option, just move the outputport:
servers:
  production:
    type: outputport
    outputPort: bigquery_orders_latest_npii_v1

We removed outputPort and dataProduct from the specification. You can add this as extensions for a given server. The Data Mesh Manager (www.datamesh-manager.com) uses dataProductId and outputPortId as follows:
servers:
  production:
    type: s3
    location: s3://asdf/orders/...
    dataProductId: orders
    outputPortId: bigquery_orders_latest_npii_v1


New version: Ryujinx.Ryujinx version 1.1.1137

Pull request has been created with Komac v1.11.0 :rocket:
Microsoft Reviewers: Open in CodeFlow

/AzurePipelines run

Automatic Validation ended with:

2024-01-26T02:20:05.1449774Z ##[error] One or more errors occurred. (SQL error or missing database (0x87AF0001)) SQL error or missing database (0x87AF0001)

(Automated response - build 660.)

For moderators
This account is automated by Github Actions and the source code was created by CoolPlayLin. If you have any questions about any pull request, don't hesitate to ping @Exorcism0666, I'll get a notification.

[!important]
Please carefully review these Pull Request before merging. If it is a Pull Request for removing incorrect content and the URLs are issue, free upon manual checking, please close this Pull Request directly. (It is best to inform Exorcism0666 of the closure.)

良い一日をお過ごしください！

Automatic Validation ended with:

Exception during executable launch operation System.InvalidOperationException: No process is associated with this object.

(Automated response - build 661.)


date picker enters previous day into field

When I select a day in the date picker while modifying my registration, the date field itself ends up with the previous day in it.
My timezone is UTC+12, and when I was modifying these dates, the current date in UTC was in fact the previous day.
Speculation: Some correction is being applied to record the date in UTC or event-local time.  But since I'm entering arrival and departure times at the event accommodation, they're already local, so no correction is needed.

This seems to be still happening.


Howto apply _custom.css

1  copy _custom.css to /sass
2  set compile_sass = true in config.toml
but  these changes did not take effect.

I'm also struggling with this.

I got it to work by adding a sass/main.scss with this content
@import "../themes/adidoks/sass/main"
@import "custom.scss"


Documentation update request

Hey, just a low priority nit.  I'm getting a CSS warning saying tooltip-html-unsafe is deprecated - we should probably update the docs to indicate this and that we shouldn't use it.

Will take a look at it.

Thanks.  No rush, clearly.

While we're at it, we should update the documentation to include that the value of the tooltip-template needs to be quoted if it's just a string since the directive uses an = instead of an @ for the parameter values.  I just spent an hour trying to figure this one out.

Thanks for the quote tip, was struggling with this.

@karianna sorry, just saw your label.  can you please provide PR instructions?  i've never done one before and the contributing article doesn't seem to give steps.

Well we don't provide such information since there are plenty of resources out there that do. 1 simple google search let me do this page for you:
https://help.github.com/articles/creating-a-pull-request/

Nevermind the PR, I'll fix this now.

Next release, this will be fixed in the docs.


Fix build for Debian Bullseye

🦟 Bug fix
Fixes #362
Summary
Presumably the versioning of cppzmq has the same problem on Debian Bullseye as on Ubuntu Focal.
This adds the same workaround for Debian Bullseye which seems to solve the build issue.
Checklist

[x] Signed all commits for DCO
[ ] Added tests
[ ] Updated documentation (as needed)
[ ] Updated migration guide (as needed)
[ ] Consider updating Python bindings (if the library has them)
[ ] codecheck passed (See contributing)
[ ] All tests passed (See test coverage)
[ ] While waiting for a review on your PR, please help review another open pull request to support the maintainers

Note to maintainers: Remember to use Squash-Merge and edit the commit message to match the pull request summary while retaining Signed-off-by messages.

Thanks @mjcarroll!


Support .NET Standard and 3.5 into the same Unity project

Hi guys,
Some Unity users have reported the same issue with the RSG.Promise library:

https://github.com/proyecto26/RestClient/issues/30
https://github.com/proyecto26/RestClient/issues/35
https://github.com/proyecto26/RestClient/issues/38

So, my question is... Is there an easy way to support the two frameworks? (Depending on the selected platform, the respective DLL is loaded to avoid duplicate reference errors)
Honestly, I don't know, I don't have a lot of experience with Unity.
This is the plugin from the Unity Store https://assetstore.unity.com/packages/tools/network/rest-client-for-unity-102501
Any recommendation is very appreciated 👍

The easiest way to fix this would probably be to just include the source for C# Promise instead of the compiled DLL. If you have to only ship one version of the DLL I'd probably suggest still using the .NET 3.5 version because that will work with older .NET 3.5 projects as well as ones targeting the full .NET 4.x framework. It just won't support .NET Standard or UWP projects.
I had a quick look online and in Unity and it doesn't look like there's a way built-in to enable or disable DLLs depending on the .NET runtime.


Landkreiswechsel: Daten-Exploration, Vergleichsmethoden testen

@udiallo could you add an description and also labels? also add it to a project please if one fits :-)


don't error if it's not a React Component

unstated uses this.setState and we're getting false positives when using this rule.
I figured this would be better than an issue. Is this something we could add?

Absolutely - we should be using Components.detect in this rule: https://github.com/yannickcr/eslint-plugin-react/blob/master/lib/rules/no-access-state-in-setstate.js#L24
similarly to https://github.com/yannickcr/eslint-plugin-react/blob/master/lib/rules/no-deprecated.js#L43. Want to make that change? :-D

Neat! Perhaps I will. But if anyone else would like to make that happen before I can get around to it that'd be super :+1:

I've pushed up an initial WIP commit; it won't fix the problem quite yet. One will need to check like is done here to ensure that the setState call is inside a React component.
If anyone else wants to help, please do not submit a new PR - post a link to your commits here, and I'll happily pull them into this one.

This seems to have been fixed in #2711. I'll rebase this and land the test case to close it.


Zoom should be based of the original PDF and not just zooming the canvas

My problem is the following: I use ngx-imageviewer for very detailed technical drawing PDF and it's vital that the user can zoom in and keep all the details which are available in the original PDF.
Sadly the zoom-algorithm is just performed on the already rendered canvas. Which creates a Pixel-mess. This is probably known and that's the reason why the zoom is limited.
Is it possible to force a re-render of the cropped area somehow? Or simple use the zoom-function from pdf.js (see https://github.com/mozilla/pdf.js/blob/762c58e0fcfdc8f3fd23ce22a15ee044d8d372ec/examples/mobile-viewer/viewer.js#L276)?

OT: Thanks for the great work with this project! I really like it a lot and if you would give me some hints I'll try to implement this feature myself.

There are several problems with the current zoom implementation. As soon as the scale differs from the scale used to generate the image it looks bad.  All this is greatly amplified if you allow for a higher zoom by changing this line from this.viewport.scale * 4 to this.viewport.scale * 10 (https://github.com/hallysonh/ngx-imageviewer/blob/8ca97aa0a2db4b33dde5deeb551c84ebf13af9a0/projects/ngx-imageviewer/src/lib/imageviewer.model.ts#L151).
The only real solution is to rerender the pdf after zooming.


Please update the img2sdat for Android 10 & Android 11

I've tried to debug the flash errors & I've noticed that

img2sdat/common.py

is not making a compatible transfer.list for Android 10 & Android 11 devices. I always get some errors when I try to remove those lines...

erasing 93285 blocks
package_extract_file from system_ext.transfer.list to memory took 00s.BLKDISCARD ioctl failed: Invalid argument
failed to execute command [erase 8,88590,97792,98833,130561,131594,163328,164385,185006]
new data receiver is still available after executing all commands.
script aborted: E2001: Failed to flash system_ext_a partition.
E2001: Failed to flash system_ext_a partition.error: 2001
Updater process ended with ERROR: 1
I:Install took 0 second(s).
Error installing zip file '/sdcard/crDroidAndroid-11.0-20210614-mojito-v7.6.zip'

When I try to remove that line, I get another set of following errors:

writing 512 blocks of new data
writing 512 blocks of new data
writing 512 blocks of new data
writing 512 blocks of new data
writing 512 blocks of new data
writing 1 blocks of new data
writing 512 blocks of new data
writing 457 blocks of new data
lseek64 failed: Invalid argument
Failed to write 23442 bytes.
missing 1871872 bytes of new data
failed to execute command [new 4,188006,188462,188513,188514]
script aborted: E2001: Failed to flash system_ext_a partition.
E2001: Failed to flash system_ext_a partition.error: 2001
cause: 103
Updater process ended with ERROR: 1
I:Install took 7 second(s).
Error installing zip file '/sdcard/crDroidAndroid-11.0-20210611-mojito-v7.6.zip'

lseek64() couldn't able to parse the transfer.list

Did you ever get this working?  I'm trying to figure out what to use to build the zip-file to install a system.img where there are dynamic partitions -(SUPER)..


Improve getting started documentation in Readme

Feedback came in from the community regarding the documentation in the Readme.

I'm on a development effort that elected to switch to using OpenTDF for its ABAC needs several months ago. I've been using OpenTDF just long enough to start getting comfortable with it, though recently discovered the massive overhaul to the OpenTDF GitHub repo and it's overall implementation. Similar to the sentiment expressed by Carlos (see above), I was relying heavily on the examples (in particular the secure-remote-storage example) contained in now-deprecated version (and as someone drinking from several firehoses simultaneously, this...sigh...wasn't great timing...)
I suppose I have several questions:
(1) Is there anyway I could communicate with someone familiar with the older examples? The sunk cost and technical debt I'm running into is a beast. Would be very appreciative of any one willing to engage. :slightly_smiling_face:
(2) I'm working in parallel trying to understand the new OpenTDF implementation. I've already setup the dependencies (thankfully, a much easier process than your previous quick start guide!), but I'm confused about what/why is going on with the steps in the "Run" section after docker-compose up.
There are instructions for creating an OpenTDF config file, though I see several examples exist. I presume I can leave for now? Or, are there modifications one needs to make out-of-the-gate?
Step 3 is giving me a headache:
"go run github.com/opentdf/platform/service provision keycloak" doesn't make sense to me. I don't know what the intention of this step is.
Firstly — and my preemptive apologies for having just enough knowledge of Golang to be super dangerous — does it make sense for a go run command to have a URL as an argument?
Secondly, I see where there is a file contained in platform/service/cmd called "provisionKeycloak.go". Is this actually the intended file that needs to be run here?
Is there anyway these steps could be better explained? I don't have a good idea what/why I'm doing what I'm doing, or how for that matter. IMHO, these instructions leave a lot to the imagination generally, but also seem to rely on quite a bit of expertise with the dependencies.
(3) Do you plan on adding more examples/documentation thereof anytime soon? I see the OpenTDF Platform Examples for Attribute Service and Authorization Service...but again, it seems like a lot of "exercises left to the reader".
(4) Although the implementation has obviously changed a lot, I presume the OpenTDF spec has not changed. Would someone be able to verify that this is the case?
Thanks in advance. I'm really excited about the possibilities of OpenTDF, but really struggling to get up and running. Any feedback is greatly appreciated

Acceptance Criteria

interpret feedback and improve readme

Some additional questions related to getting started documentation:
I have followed steps 1-4 in the README under “Running the Platform Locally” here: https://github.com/opentdf/platform?tab=readme-ov-file#running-the-platform-locally
How do I validate that the platform is stood up properly?
Are there HTTP endpoints that should successfully return data with curl?
I expected that maybe http://localhost:8080/.well-known/opentdf-configuration could work, but it does not seem to be accessible.
$ curl -v http://localhost:8080/.well-known/opentdf-configuration
*   Trying [::1]:8080...
* connect to ::1 port 8080 failed: Connection refused
*   Trying <IP_ADDRESS>:8080...
* connect to <IP_ADDRESS> port 8080 failed: Connection refused
* Failed to connect to localhost port 8080 after 0 ms: Couldn't connect to server
* Closing connection
curl: (7) Failed to connect to localhost port 8080 after 0 ms: Couldn't connect to server

Trying the same with port 8888 (keycloak) returns a 404.
$ curl -v http://localhost:8888/.well-known/opentdf-configuration
*   Trying [::1]:8888...
* Connected to localhost (::1) port 8888
> GET /.well-known/opentdf-configuration HTTP/1.1
> Host: localhost:8888
> User-Agent: curl/8.4.0
> Accept: */*
>
< HTTP/1.1 404 Not Found
< content-type: text/html; charset=utf-8
< content-length: 53
<
* Connection #0 to host localhost left intact

Resource not found


fix dot in query string wildcard match, change allowedReferers checking to regex

this started as my fix for #284 (lines 562-3).  as I was in there i had the thought that regex would be a fun way to [hopefully] simplify the allowedReferers matching.  seems to work for my wildcard cases.  not sure if regex is expensive in a proxy, nor am i sure i'm doing this github thing correctly but everyone has to start somewhere i guess :)

@aaronkilbey - thanks for the contribution.
There's actually already a pull request in the queue that I think might have fixed your issue (and also rewrite the checkWildcardSubdomain().  Did you try the code in https://github.com/Esri/resource-proxy/pull/285 ?
There's also an issue that describes the wildcard etc that we plan to support, see https://github.com/Esri/resource-proxy/issues/282.

Sry, did not see that.  I'll have to try it out.  Just took a glance at #282 though, and it's the perfect task for regex unless there's something speed-expensive about it.  Cheers!


⚠ Turnos 24x7 has degraded performance

In b8866f2, Turnos 24x7 (https://reservas-dev.alternativasinteligentes.com/) experienced degraded performance:

HTTP code: 200
Response time: 1514 ms

Resolved: Turnos 24x7 performance has improved in e7d4ed2.


Split from xclim

Pull Request Checklist:

[ ] This PR addresses an already opened issue (for bug fixes / features)

This PR fixes #xyz

[x] (If applicable) Documentation has been added / updated (for bug fixes / features).
[x] (If applicable) Tests have been added.
[x] CHANGELOG.rst has been updated (with summary of main changes).

[x] Link to issue (:issue:number) and pull request (:pull:number) has been added.

What kind of change does this PR introduce?

First pass on splitting sdba from xclim. Mostly all tests that previously existed are passed in this separate module. Functions and tests that we very climate specific were removed.

Does this PR introduce a breaking change?
N/A
Other information:
Important parts that still need attention:

Indicator class has been adapted a bit, but perhaps a new class alltogether would be better
xclim_submodules could be integrated better in xsdba, or perhaps we could create another module for this

pre-commit.ci autofix

coverage: 66.51% (+43.4%) from 23.077%
when pulling a69dd31a96fa5fcac91551abb89e637a347a77e1 on split_from_xclim
into c5e8e55bea8ee8d62b206c04ea7ca5d269efe31f on main.

I've removed the sdba- in front of references, but I think it still won't work. By comparing with xclim I'm not sure what is the issue with references, I'll check later

@coxipi I believe the new failures are due to the latest xarray.


streaming: append-only TopN panic

Describe the bug
Append-only TopN panic in inserting managed_lower_state.
thread 'tokio-runtime-worker' panicked at 'itertools: .zip_eq() reached end of one iterator before the other', /Users/siyuan/.cargo/registry/src/github.com-1ecc6299db9ec823/itertools-0.10.3/src/zip_eq_impl.rs:48:13
stack backtrace:
   0: std::panicking::begin_panic
             at /rustc/7466d5492b2d28d2ba5114dbe71511a6502ac822/library/std/src/panicking.rs:616:12
   1: <itertools::zip_eq_impl::ZipEq<I,J> as core::iter::traits::iterator::Iterator>::next
             at /Users/siyuan/.cargo/registry/src/github.com-1ecc6299db9ec823/itertools-0.10.3/src/zip_eq_impl.rs:48:13
   2: risingwave_common::util::ordered::serde::OrderedRowSerializer::serialize_datums
             at ./src/common/src/util/ordered/serde.rs:97:36
   3: risingwave_common::util::ordered::serde::OrderedRowSerializer::serialize
             at ./src/common/src/util/ordered/serde.rs:85:9
   4: risingwave_common::util::ordered::serde::serialize_pk
             at ./src/common/src/util/ordered/serde.rs:228:5
   5: risingwave_storage::table::state_table::StateTable<S>::insert
             at ./src/storage/src/table/state_table.rs:104:24
   6: risingwave_stream::executor::managed_state::top_n::top_n_state::ManagedTopNState<S,_>::insert::{{closure}}
             at ./src/stream/src/executor/managed_state/top_n/top_n_state.rs:196:26
   7: <core::future::from_generator::GenFuture<T> as core::future::future::Future>::poll
             at /rustc/7466d5492b2d28d2ba5114dbe71511a6502ac822/library/core/src/future/mod.rs:91:19
   8: <risingwave_stream::executor::top_n_appendonly::InnerAppendOnlyTopNExecutor<S> as risingwave_stream::executor::top_n_executor::TopNExecutorBase>::apply_chunk::{{closure}}
             at ./src/stream/src/executor/top_n_appendonly.rs:201:56
   9: <core::future::from_generator::GenFuture<T> as core::future::future::Future>::poll

To Reproduce
create table t4 (v1 real not null, v2 int not null, v3 real not null) with ('appendonly' = true);
create materialized view mv5 as select v1, v3 from t4 order by v1 limit 3 offset 3;
insert into t4 values (1,1,4), (5,1,4), (1,9,1), (9,8,1), (0,2,3);

Expected behavior
Populate the mview and doesn't panic
Additional context

maybe schema mismatch or pk mismatch?

I am investigating

Any idea?  @wcy-fdu

Let me take a look

I will send a PR to fix this bug.


How to download videos from vk ?

Hey evryone
i have a question how how to donwload videos from vk with a direct link ?
and thanks

Stop spamming. I've already pointed out: read and fill in the new issue template.


SASS-3292 correct alignment of change and remove links on summary page

Description
Please include a brief summary of the change you've made and the issue that it fixes.
Add a link to the relevant story in Jira
SASS-3292
Checklist PR Reviewer
Before Reviewing

[ ]  Have you pulled the branch down?
[ ]  Have you assigned yourself to the PR?
[ ]  Have you moved the task to “in review” on JIRA?
[ ]  Have you checked to ensure all dependencies are up to date?
[ ]  Have you checked to ensure its been rebased against the current version of main?

Whilst Reviewing

[ ]  Have you run the tests?
[ ]  Have you run the journey tests?
[ ]  Have you looked at the JIRA story to make sure all Acceptance Criteria has been met?

After Reviewing

[ ]  Have you checked for merge conflicts or any changes in the current main that may affect the current pull request? i.e. does it need another rebase?
[ ]  Have you checked to make sure there are no builds in the pipeline before you merge?
[ ]  Have you moved the task to “in pipeline” on Jira?

Checklist PR Raiser
Before creating PR

[ ]  Have you run the tests?
[ ]  Have you run the journey tests? (where applicable)
[ ]  Have you addressed warnings where appropriate?
[ ]  Have you rebased against the current version of main?
[ ]  Have you checked code coverage isn’t lower than previously?

After PRs been raised

[ ]  Have you checked the PR Builder passes?

@juamalBlackman I am happy with the changes.


feat: support disabling individual auro-radio components within an auro-radio-group

Alaska Airlines Pull Request
As a developer, I want to offer a radio group which allows for individual auro-radio components to be disabled without having to disable the entire auro radio-group.
Summary:
Prior to this feature addition, the auro-radio-group only allowed for disabling the entire radio group. This PR adds support for having a radio group with one or more individual radio buttons disabled, as seen here:

Type of change:

[x] New capability

Checklist:

[x] My update follows the CONTRIBUTING guidelines of this project
[x] I have performed a self-review of my own update

By submitting this Pull Request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
Pull Requests will be evaluated by their quality of update and whether it is consistent with the goals and values of this project. Any submission is to be considered a conversation between the submitter and the maintainers of this project and may require changes to your submission.
Thank you for your submission!
-- Auro Design System Team

@blackfalcon These prs still don't seem to auto-assign someone as an assignee or a reviewer. Is that intentional?

@tjgrist not by design, just never set up the app.

Need to run this through an accessibility test to ensure that there are no new issues.
Is this something I can do, if so, how?

I squashed my commits, thanks.

Need to run this through an accessibility test to ensure that there are no new issues.

Is this something I can do, if so, how?
I squashed my commits, thanks.

I'd take a look at the defined keyboard interactions for radio buttons and make sure they all behave the same way. I'd especially want to make sure that you cannot focus a disabled radio button in an enabled radio group with the keyboard.
The WAI-ARIA Authoring practices are a good resource when you want to know how a component should behave.

Tab and Shift + Tab: Move focus into and out of the radio group. When focus moves into a radio group :

If a radio button is checked, focus is set on the checked button.
If none of the radio buttons are checked, focus is set on the first radio button in the group.

Space: checks the focused radio button if it is not already checked.
Right Arrow and Down Arrow: move focus to the next radio button in the group, uncheck the previously focused button, and check the newly focused button. If focus is on the last button, focus moves to the first button.
Left Arrow and Up Arrow: move focus to the previous radio button in the group, uncheck the previously focused button, and check the newly focused button. If focus is on the first button, focus moves to the last button.

As long as those all behave as expected, we should be good. Let me know if you have any issues validating and I'd be happy to pair on it.

The issue of tabbing between the active nodes has been addressed, but when you first tab into the group it still selects the 1st node, even if it is disabled.

Created a new issue for the tabbing into group bug. I took a shot at fixing it but was having trouble.

This PR now also addresses issue #7

:tada: This PR is included in version 1.1.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


add goreleaser

Add goreleaser to create release.
They are copied from
https://github.com/hashicorp/terraform-provider-scaffolding/blob/main/.goreleaser.yml
https://github.com/hashicorp/terraform-provider-scaffolding/blob/main/.github/workflows/release.yml

Thank you!


stest_rfp fails on Power10

When run with the develop branch of OpenBLAS on POWER10, AIX7.3, we found this test fails which may be a minor failure as discussed in previous issue https://github.com/OpenMathLib/OpenBLAS/issues/3648. The reference LAPACK still set threshold to 30.0 but OpenBLAS set it to 42.0. Is that OK to set it larger such as 45.0?
 All tests for SPF drivers  passed the threshold (   2304 tests run)
 All tests for SLANSF auxiliary routine passed the threshold (   384 tests run)
 All tests for the RFP conversion routines passed (    72 tests run)

  *** Error(s) or Failure(s) while testing STFSM               ***
      Failure in STFSM, CFORM='T', SIDE='L', UPLO='U', TRANS='T', DIAG='N', M= 50, N = 50, test=  42.893
  STFSM auxiliary routine:     1 out of  7776 tests failed to pass the threshold
 All tests for SSFRK auxiliary routine passed the threshold (  2592 tests run)

Well, I think it should be OK as long as this seems to be more of a cosmetic problem. I tried raising this issue with the Reference-LAPACK team back then but they seem to consider it "not their problem" (and probably rightly so, as the topic of "minor failures" is mentioned in their FAQ and the testsuite still does what it was designed for - verifying non-optimized reference LAPACK builds with a non-optimized reference BLAS)


A logo For Income Tax Calculator

the rupee symbol is inside a circle and locked
signifying the income is safe against paying extra tax by using income tax calculator
Fixes #165

Describe the changes you've made
Added Another logo for Income tax calculator, created using Adobe Illustrator
Describe if there is any unusual behaviour of your code(Write NA if there isn't)
NA
Additional context (OPTIONAL)
Test plan (OPTIONAL)
Checklist

[x] I have mentioned related issue number in PR description.
[ ] I have added screenshots and related demo links of my changes..
[x] The title of my pull request is a short description of the requested changes.
[ ] My code follows the code style of this project.
[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[ ] Open Source Program names(OPTIONAL: If you participated in any open-source program then please mention the program name here)

This doesn't look related to a calculator.


customdata

vscode allows to read customdata via the "html.customData" configuration setting.
Is it possible to feed such data into monaco?
I want to be able to online edit my web components documentation

Support for custom data just landed last month:
https://github.com/microsoft/monaco-editor/issues/2284

thank you very much


Possible NPE when receiving a response (without a request)

While upgrading to the most recent intellij (which automatically creates a breakpoint on NPE) I found this issue.
Our 0.99.8 armeria client connects to an endpoint via a load balancer which sometimes sends a 408 http response (without a http request)
https://tools.ietf.org/html/rfc7231#section-6.5.7
This results in an NPE at the following location:
https://github.com/line/armeria/blob/ba2601eb83e2072e1730ea9765bd332947b7b7c4/core/src/main/java/com/linecorp/armeria/client/Http1ResponseDecoder.java#L172
While I don't think our servers have had any issues due to this, I think it might make more sense to explicitly close the connection from the client side as well instead of silently ignoring the error.

a load balancer which sometimes sends a 408 http response (without a http request)

That's interesting. So the load balancer sends the 408 response even though it doesn't get any requests? so it means that the response is sent in the idle connections. right?

so it means that the response is sent in the idle connections. right?

I haven't been able to exactly verify which connections were closed.
Given that the client is configured to use h1c with no pipelining and we don't use long polling in our business logic,
I was guessing it's probably due to health checks (we are using HealthCheckService with default values).
I can also share our code from a private channel if you would like to take a closer look

Related to #2900

Ah, I forgot to reply to this. 😅

I was guessing it's probably due to health checks (we are using HealthCheck[Service][EndpointGroup] with default values).

Or Ping request? 😄
I just wanted to make sure whether it's the problem of the load balancer or our client which might not correctly track the requests and responses

It's a little complicated, so uploaded a PR to illustrate what's happening.

The cause was definitely client request timeout, ping wasn't enabled.
Aborting a request immediately afterwards, and sending a 408 client request timeout causes this issue (without additional requests on the connection).
The first HttpResponse obj was swallowed after a NPE, the corresponding next HttpContent threw a ProtocolViolationException.
In our case, this log was visible when using OrElseEndpointGroup where the first was a DynamicEndpointGroup, and the second was a StaticEndpointGroup

@jrhee17 Would you mind elaborating on this:

Aborting a request immediately afterwards, and sending a 408 client request timeout causes this issue (without additional requests on the connection).

Is this problem triggered by a ill-behaving load balancer that sends a response event before receiving a request or ..?

a ill-behaving load balancer

I guess some load balancers close a open connection without a request for a certain period of time.
I don't know if I would call it ill-behaving since I was able to reproduce this with a local haproxy with configurations similar to the link below (it's been a while, so I have to dig for the actual cfg file)
https://www.haproxy.com/blog/haproxy-and-http-errors-408-in-chrome/

I see. I guess what we can do possibly are one of the following:

Close the connection when it was returned to the pool without making any requests.
Just warn the protocol violation and close the connection.

We could log at debug level if status code is 408.

It's been a while since I took a look at this issue, so let me organize what I am thinking again.

I can still reproduce the warning logs - this can be done by copying the below code and running it
https://github.com/jrhee17/armeria/blob/a64d1e688f5c2378375e1f50fff29c4e43226f14/core/src/test/java/com/linecorp/armeria/client/HttpClientRequestTimeoutTest.java
Explanation

Create an armeria h1c client
Try to make a request and abort the request immediately - this is to ensure that a connection is established, but a request isn't sent.
Send a 408 request timeout response from the server side.

https://tools.ietf.org/html/rfc7231#section-6.5.7

The armeria client prints the following log:

22:19:50.566 [main] INFO  com.linecorp.armeria.common.Flags - com.linecorp.armeria.dumpOpenSslInfo: false (default)
22:19:50.729 [main] DEBUG c.l.armeria.common.util.SystemInfo - Java version: 14
22:19:51.913 [armeria-common-worker-nio-5-1] WARN  c.l.a.client.Http1ResponseDecoder - Unexpected exception:
com.linecorp.armeria.common.ProtocolViolationException: unexpected message type: io.netty.handler.codec.http.DefaultHttpContent (expected: io.netty.handler.codec.http.HttpResponse, channel: [id: 0x93474c4b, L:/<IP_ADDRESS>:64190 ! R:<IP_ADDRESS>/<IP_ADDRESS>:64189], resId: 1)
	at com.linecorp.armeria.client.Http1ResponseDecoder.failWithUnexpectedMessageType(Http1ResponseDecoder.java:266)
	at com.linecorp.armeria.client.Http1ResponseDecoder.channelRead(Http1ResponseDecoder.java:190)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365)
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357)
	at io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext.fireChannelRead(CombinedChannelDuplexHandler.java:436)
	at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:324)
	at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:296)
	at io.netty.channel.CombinedChannelDuplexHandler.channelRead(CombinedChannelDuplexHandler.java:251)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365)
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357)
	at io.netty.handler.logging.LoggingHandler.channelRead(LoggingHandler.java:271)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365)
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357)
	at io.netty.handler.flush.FlushConsolidationHandler.channelRead(FlushConsolidationHandler.java:152)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365)
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357)
	at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1410)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365)
	at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:919)
	at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:166)
	at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:719)
	at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:655)
	at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:581)
	at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:493)
	at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:989)
	at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
	at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
	at java.base/java.lang.Thread.run(Thread.java:832)
22:20:02.919 [Thread-0] DEBUG c.l.armeria.client.ClientFactory - Closing the default client factories
22:20:02.923 [Thread-0] DEBUG c.l.armeria.client.ClientFactory - Closed the default client factories

Process finished with exit code 0

Fixed by #3060


Enable patching debugging

Description
Addition of PatchingConditionsChain class for patched estimators to store and output debug messages with failed patching conditions.

/intelci: run

/intelci: run


Prototype 1 with wrapper for odsp domain change handling(Not for merging)

Refer: https://github.com/microsoft/FluidFramework/issues/10117
Description
This is first prototype for handling odsp domain change handling by using another layer specific to odsp and wrap loader.resolve/loader.request within this logic.
I like this more than the other prototype as it is concise and specific to odsp domain change  logic where only the site domain changes and rest of the things like siteID, driveID, itemId remains same. All this seems specific to how spo handles domain change in their logic so instead of putting the logic in loader layer, it is better to keep in odsp layer.

I think main thing that is missing in both approaches is caching.
This may be fine given number of hits (in telemetry was low) and with that few hits we may afford not to be super performant.
But we should plan on adding caching.
The simple answer (here) might be to delegate it to app. I.e. require app to provide a map to this function that can be used to read / write these values (read before we start resolution, write out final mapping if we learned about it through expensive open + redirect).

Take a look at my comments in both PRs, but I agree with you, I like this direction better, if we can adjust some of the behaviors I've pointed out

@jatgarg, would be nice to find a way to move it forward :)

@jatgarg, would be nice to find a way to move it forward :)

Will start working on it again. Thanks for the reviews/suggestions on both prototypes. I will move it to separate package.

Closing this as it will moved to next branch instead of main.


NFS for PS needs rpc.statd running

I am attempting to create a statefulset. My PS is locally hosted from an NFS share.  My storage and claims are coming online but I get the following error:
MountVolume.SetUp failed for volume "kubernetes.io/nfs/fa7984c6-6f1a-11e7-b489-021fcfb21298-storage-es-data-0" (spec.Name: "storage-es-data-0") pod "fa7984c6-6f1a-11e7-b489-021fcfb21298" (UID: "fa7984c6-6f1a-11e7-b489-021fcfb21298") with: mount failed: exit status 32 Mounting command: mount Mounting arguments: <IP_ADDRESS>:/vol/multiint/dev01/esearch/es001 /var/lib/kubelet/pods/fa7984c6-6f1a-11e7-b489-021fcfb21298/volumes/kubernetes.io~nfs/storage-es-data-0 nfs [] Output: mount.nfs: rpc.statd is not running but is required for remote locking. mount.nfs: Either use '-o nolock' to keep locks local, or start statd. mount.nfs: an incorrect mount option was specified  Error syncing pod, skipping: timeout expired waiting for volumes to attach/mount for pod "default"/"es-data-1". list of unattached/unmounted volumes=[storage]
Maybe we need to add an NFS  package?

This is a Kubernetes thing, not this image.


Integration OncoKB annotation in Genome Nexus

model oncokb annotation in GN.

we can use the data from the oncokb search endpoint directly
later we can switch to the new end points. (or should we prioritize the new endpoint? I don't think the output format will change a lot)

cache all oncokb genes including their curated isoforms
develop endpoints to annotate variants with oncokb annotation

maybe we can borrow this and then we don't have to do it in oncokb?
cache results
note: we should look up for the gene in the oncokb gene cache above and only send variants in genes annotated in oncokb

implement ways to sync/clear cache

to start, we could manually clear cache for every oncokb release
ideally, oncokb can have a timestamp for every curated gene and when there is a new release we clear only the updated genes

Copied from original issue: cBioPortal/cbioportal#1815

@onursumer @inodb @zhx828 : I have updated this issue. I am thinking of prioritizing this one (I know I have been back and forth a few times!), since oncokb seems to be a bottleneck in cbioportal (https://github.com/cBioPortal/cbioportal/issues/5167). Caching it per variant in genome nexus may be a good way to handle that. We will also be able to support more analysis, such as oncokb analysis in study view page.

Let's discuss soon.

We are considering adding oncokb data into cbioportal database directly (https://github.com/cBioPortal/cbioportal/issues/5213).


conflicts with @types/bluebird ~3.0.36

Is there a reason why you use older typings for bluebird? These do conflict with other packages, while bluebird itself (^3.4.0) can be resolved to 3.5.0.
  "dependencies": {
    "@types/bluebird": "~3.0.36",
    "@types/express": "~4.0.34",
    "bluebird": "^3.4.0",
  },
  "devDependencies": {
    "express": "4.12.3",
  },

Can we change to
  "dependencies": {
    "@types/bluebird": "^3.4.0",
    "bluebird": "^3.4.0",
  }

No reason, probably it was simply not available when the original typings were developed.