delta API does not return driveItem property 'deleted'

I'm using Graph API v1.0 and was to get deleted list in my drive.
I'm using onedrive personal.
I found that
- API feature that accessing to recycle bin is not provided yet.
- the way which can get the 'deleted' facet and enumerating it is only via delta API.
And I'm trying to get 'deleted' facet using delta API like,
/drive/root/delta
but it just returns all the item in my drive(only currently existing items)
Even there is no deleted items in delta return after I delete files. Tried many times
as far as I know, there isn't filtering query feature to delta API.
So, is there any way to get deleted facet or files in onedrive API
or the way to get list of deleted items?
Thanks with best regards

Hello,
Depending on what you're doing this may be by design.  When you call the Delta API for the first time with no change token it will only return the current items in the drive which would not include the items that are in the recycle bin.
If you're calling Delta with a change token you should see a deleted facet (and soon an OData annotation) indicating that the item was removed if it was deleted since the last time you made the delta call.
Adding a recycle bin API is on our backlog but does not currently have an ETA.

Hello,
Depending on what you're doing this may be by design.  When you call the Delta API for the first time with no change token it will only return the current items in the drive which would not include the items that are in the recycle bin.
If you're calling Delta with a change token you should see a deleted facet (and soon an OData annotation) indicating that the item was removed if it was deleted since the last time you made the delta call.
Adding a recycle bin API is on our backlog but does not currently have an ETA.


Does Vest has a discord server or slack workspace?

It does now :)
https://github.com/ealush/vest/issues/402

The invite link is still valid?
I get invite invalid.


Need to silence the alerts for the servers which are in scheduled start/stop

I need to silence the alerts for particular applications servers in the US off-business hours.
We have around 100 servers configured in Prometheus, also i have created the labels with app & env for all the servers.
For eg : env as Prod & Dev, app as RPA, Alteryx, Delphix, Qlik etc
Configurations are working fine, but the Delphix applications(around 15 servers) are still in working phase and its turned on only during the US business hours and turned off other times.
Is there any rules or configuration which can help to silence the alerts on the daily basis with the matching labels(eg: app= DELPHIX) will be helpful.

Use mute_time_intervals / active_time_intervals in your alert routing.
https://prometheus.io/docs/alerting/latest/configuration/#route


HTC VIVE Elite headset cannot be detected!

I was using the HTC VIVE Elite headset, however, while I was running this unity program, it reminds me that the 'Tiltasaurus says... Failed to detect VR'.
In the playersettings, I installed the openxr and checked the openXR box.
In the app config, I selected sdk mode of 'unityXR'.
So I think the all the configuration was correct.
Besides, I also tried an older version of the openbrush which used steamvr. It worked well in the HTC VIVE Elite headset.
So what should I do if I want to use this openxr version openbrush on my HTC VIVE Elite headset?

The HTC VIVE Elite headset uses VIVE business streaming and steam vr at the same time. However, the openbrush program cannot detect VR.
I ran another older version the openbrush which supports steamvr works fine with the HTC VIVE Elite headset

It sounds like your OpenXR runtime may not be set to SteamVR?

The OpenBrush version I used didn't support SteamVR anymore

@cz2011301070 SteamVR provides an OpenXR runtime, so it will still work. SteamVR was recently updated to better support more obscure headsets/controllers, please could you try again?


Only show scrollbar when needed

Fixes #199 and #133

Can this pull request be merged?

Hi @boyanes90 I've been maintaining this repo on my own fork here Many issues have been solved and lots of features have been added


Fix bigtable_it_test instance naming

Introduced in #29203
The file already had from datetime import datetime
Please add a meaningful description for your change here

Thank you for your contribution! Follow this checklist to help us incorporate your contribution quickly and easily:

[ ] Mention the appropriate issue in your description (for example: addresses #123), if applicable. This will automatically add a link to the pull request in the issue. If you would like the issue to automatically close on merging the pull request, comment fixes #<ISSUE NUMBER> instead.
[ ] Update CHANGES.md with noteworthy changes.
[ ] If this contribution is large, please file an Apache Individual Contributor License Agreement.

See the Contributor Guide for more tips on how to make review process smoother.
To check the build health, please visit https://github.com/apache/beam/blob/master/.test-infra/BUILD_STATUS.md
GitHub Actions Tests Status (on master branch)

See CI.md for more information about GitHub Actions CI or the workflows README to see a list of phrases to trigger workflows.

Run Python_Xlang_Gcp_Direct PostCommit

Run Python_Xlang_Gcp_Direct PostCommit

Cherry pick - #29254 - should wait to go in after this one


Move event streaming code to smithy-swift

Describe the feature
Some event streaming code (i.e. for marshalling & unmarshalling event stream types) is located in aws-sdk-swift, even though event streaming is a core Smithy feature.
Locate non-AWS specific event streaming code that is in aws-sdk-swift & move it to smithy-swift.  Also, add an event streaming operation to the Test SDK to verify that smithy-swift can build an SDK with event streams.
Use Case
To support core Smithy features in smithy-swift and properly modularize the SDK
Proposed Solution
Move types & break dependencies as needed.
Other Information
No response
Acknowledgements

[ ] I may be able to implement this feature request
[ ] This feature might incur a breaking change

Event streaming code has been modularized per standard ref. architecture.  This included moving code out of SDK and into modules provided by smithy-swift.
Closing since this is already tracked by https://github.com/awslabs/aws-sdk-swift/issues/1384 and https://github.com/awslabs/aws-sdk-swift/issues/1385.


[BUG] some notes are invisible on gh charts if using autogen steps on other gamemodes

already mentioned it in the discord
its essentially just autogen doesnt know about gh

example if needed

its essentially just autogen doesnt know about gh
no its not, absolutly not, its because the noteskins dont support hopo's and gems so they arnt shown, I dont consider this a bug cuz you shouldnt use hopo's and gems on dance, but I'm open for opinions from other members.

its essentially just autogen doesnt know about gh

no its not, absolutly not, its because the noteskins dont support hopo's and gems so they arnt shown, I dont consider this a bug cuz you shouldnt use hopo's and gems on dance, but I'm open for opinions from other members.

interesting

Fixed


Inappropriate line break after inline equation

Hi,
when an inline equation is followed by a period (no space), the period may land on the next line resulting in a weird result
Example for reproducing the issue (no template, blank typst project):
The dot will land on the next line, but I dont think it should, now let's add a formular: $a s d f g h j k l n n i$.`

becomes
The dot will land on the next line, but I dont think it should, now let's add a formular: $a s d f g h j k l n n i$
.

This was fixed, just not released. https://github.com/typst/typst/commit/46ce9c94e3f615751989d3cba5aa1599e0ba5913

Wow, awesome!


Use Virtual DOM for rendering

I'd like to discuss the usage of a virtual dom implementation for rendering the output (lines, selection, links...).
At the moment, we implement something similar by caching spans that we can reuse for the next render cycle. Although this is okay for the moment, I feel it is very constraining:

There is no real view / model that is used to render the DOM nodes in the viewport. At the moment there is a quite complex and difficult to extend block of logical statements that directly create the DOM nodes from the somewhat flat row / col array. I feel it would be much nicer if those logical statements would produce a data structure (view model) that can be efficiently rendered, cached and extended by a virtual dom library.

It is very hard to delay rendering for certain features, like the linkifier. It would be much nicer if the linkifier could asynchronously process the data and eventually update the targeted cols with a flag, that will then be reflected in the rendered output automatically.

The current data structure is neither optimised for rendering performance, nor for scenarios like linkify or find that have to get context from the data.

Challenges
I believe the biggest challenge is to convert a flat data structure (row/col data) into a optimised, reusable view model. For example the string:

Hello World

would have to end up as
Hello World

In other words, cols have to be grouped based on their flags. Cols that share the exact same flags can go into the same group (DOM node).
My approach would be to use the following (possibly extendable) flags for every col:

fg number: The foreground color
bg number: The background color
bold boolean: Bold col
underline boolean: Underlined col
blink boolean: Blink col
inverse boolean: Invert fg/bg
invisible boolean: Col is invisible (.xterm-hidden)
cursor boolean: Cursor is at this position
wide boolean: Is a wide character being rendered
noAscii boolean: Is the character a non-ascii character (charcode > 255)
selected boolean: Col is currently selected (Selection Manager)
matched boolean: Col is currently matched by a search term (find addon)
link string: Col is linked with this url (Linkifier)

And process them into an array of lines, where every line contains the definition of the grouped cols that share the same flags:
[[
  { chars: 'Hello ', flags: {} },
  { chars: 'World', flags: { bold: true } }
]]

This view model would be easy to convert into virtual dom by looping over the rows, rendering a div for every row, and then looping over the groups and creating a span or a for every group and add a class or style to reflect the flags.
In order for the linkifier, selection manager or the find addon to set / remove flags, they would have to register themselves as a middleware before the grouping stage, so they can flag cols before they are grouped.
Any thoughts?

So I would like to add a view model soon, the initial version would be focused on pulling the wrapping out of CircularList and into the view model so that we can support reflow https://github.com/sourcelair/xterm.js/issues/622 (wrote up ideas for this in https://github.com/sourcelair/xterm.js/pull/644#issuecomment-298058556).

[[
  { chars: 'Hello ', flags: {} },
  { chars: 'World', flags: { bold: true } }
]]

This is similar to what I proposed in https://github.com/sourcelair/xterm.js/issues/791, where the attributes are assigned to chunks of characters, rather than single characters. This also has benefits in performance as we would only need to evaluate the attribute's styles once.
Needing to create another structure like this could introduce a more memory issues that I'm trying to solve right now. I don't feel like xterm.js is a typical web app where we could defer to something like react and get efficiency benefits from it, I'd love to be proven wrong but I see the amount of data xterm.js needs to house and the performance/memory standards I have for it as being too high. Plus we depending on such a library would increase the payload size and force users into using some particular framework. Note that I have very limited experience with such virtual DOM frameworks, but we're trying to store so much data we're avoiding the typical JS way of doing things with objects and properties and opting for arrays and bit fields instead to avoid that additional cpu/memory burden.

selected boolean: Col is currently selected (Selection Manager)
matched boolean: Col is currently matched by a search term (find addon)
link string: Col is linked with this url (Linkifier)

Currently these are completely separated from the rendering part, living in their own little modules that the core lib doesn't know about. This is good because it reduces the complexity and number of external dependencies of the core rendering logic.
With links in particular also, this is a lot of work we can completely avoid unless the buffer stops moving. Links take a bunch of time to generate because we need to parse the text, create the node, insert it cleverly. While we would avoid the insertion logic if we put this into the renderer it would increase the complexity of the renderer quite a lot for little gain. Right now if you run a command that generated heaps of output, links will not be generated until the output stops.

@Tyriar thanks for your thoughts!
I was thinking about writing our own small Virtual DOM implementation that is optimised for our own needs. There is an excellent article on how it can be done here. In fact, the current spanObjectPool idea is not too far away from it :)
The selected, matched and link flags are very important parts of the idea above, because they will solve some problems we currently encounter:
SelectionManager: Invert selection color
At the moment we maintain a separate layer that draws the selection. This comes with the drawback that the text and background is always underneath the selection, plus the inability to invert the selection color. With my approach, the selected cols would automatically be grouped up to the point where the selection ends, and every group that is within a selection could get a class like xterm-selected - which would simply allow us to overwrite the background color with the selection color via css.
Find Addon (Enhancement): Show all found matches
At the moment it not possible to mark all matched instances of the search term in the viewport. With my approach, matches are automatically grouped, and could get a class like xterm-matched to style them via css.
Example
Have a look at this API example, that can be used by Addons and Core components to set flags and modify the rendered output:
term.middleware('SelectionManager', {

  // onRefresh will be throttled and called after
  // idle for this time of ms
  refreshDelay: 100,

  // Called if the viewport is refreshed (throttled by the delay above)
  onRefresh(rows, startIndex, endIndex) {

    // Rows are the current CircularList rows that are in the viewport
    // Here we can loop over the rows and cols and add / remove flags
    for (let i=selectionStartRow; i<=selectionEndRow; i++) {

      let cols = rows[i];
      if (i !== selectionStartRow || i !== selectionEndRow) {
        for (let col of cols) col.flags.selected = true;
      } else {
        // figure out the cols that belong to the selection and mark them selected
      }
    }
  },

  // Called for every group that is drawn to the DOM if there was a change
  onDraw(group, element) {

    // group is the affected view model data structure,
    // element is the DOM node drawn for that group
    if (group.flags.selected) element.classList.add('xterm-selected');
  }

});

// Somewhere in SelectionManager...
// Manually trigger a refresh for the selection manager (will call onRefresh)
// because mouse is down and the user is dragging and the selection has to be updated
term.render('SelectionManager');

@mofux wouldn't the structure you propose get very complex and verbose quickly as flags can overlap?
[[
  { chars: 'He', flags: {} },
  { chars: 'll', flags: {link: 'http://xtermjs.org'} },
  { chars: 'o', flags: {selected: true, link: 'http://xtermjs.org'} },
  { chars: ' ', flags: {link: 'http://xtermjs.org'} },
  { chars: 'W', flags: {fg: x, link: 'http://xtermjs.org'} },
  { chars: 'o', flags: {fg: x, bold: true, link: 'http://xtermjs.org'} },
  { chars: 'rld', flags: { bold: true } }
]]

Seems better to me with the current thinking where we would essentially have this:
line = "Hello World";
selectionStart = [4, 0];
selectionEnd = [5, 0];
styles = [
  [0, x, 0],
  [bold, x, 0],
  [bold, 0, 0]
]

And then use that to draw the lines when necessary. It would be nice to cache links against lines but that could be a lot of memory to gain speed in an area that doesn't need it.
While the code in the term.middleware('SelectionManager' example certainly looks nice and simple, we would still need SelectionManager.ts in its current form, it would only replace Renderer.refreshSelection which is fairly simple already. This would be at the cost of a selected flag against the data of every span inside the selection, as opposed to currently where we just have 4 integers.
Plus would it also duplicate all the data inside the CircularList to come up with the view model? That would probably more than double memory usage of the buffer, no? My thinking for a view model was to keep the data it needs very minimal, say storing the indexes that a line wraps and providing a nice method to get the actual wrapped row at some index.
I feel like this problem tackles rendering simplicity and performance via caching at the cost of memory. Rendering performance isn't an issue currently imo.
I do like the structure in your code example. Perhaps we should pursue better componentization in general so we have the core library and then a bunch of components plugged in (composition, selection, find, linkifier, etc.). Less interdependent parts would make the lib a lot simpler.

Also 👍 to lessons learned on minimizing DOM interaction from https://medium.com/@deathmood/how-to-write-your-own-virtual-dom-ee74acc13060 without additional memory overhead.

Perhaps we should pursue better componentization in general

I think this should be the ultimate goal, especially because it would allow for some really awesome plugins - plus it adds simplicity when it comes to writing tests. Something like a component interface that must be implemented or extended by a component, and which provides all the lifecycle hooks:
Interface IComponent {
  onRefresh(rows: CircularList, startIndex: number, endIndex: number): void
  onDraw(group: RenderGroup, element: HTMLElement): void
  onMousedown(evt: MouseEvent): void
  onMouseup(evt: MouseEvent): void
  onInput(evt: KeyboardEvent): void
  onFocus(): void
  onBlur(): void
  onScroll(): void
  onOpen(term: ITerminal): void
  onResize(rows: number, cols: number)
  // ...
}

class SelectionManager implements IComponent {
  constructor(term: ITerminal) { ... }
}

// register
term.middleware('SelectionManager', SelectionManager);

wouldn't the structure you propose get very complex and verbose quickly as flags can overlap?

Yes... it is also not very optimised because it would potentially create spans that could be avoided (by nesting groups, where child groups would share the same flags with the parent).
Mmmmhh... it is really hard to get this right. I think basically we are looking for a way to tag a certain range of characters within the viewport, and then render the visual representation of this character range based on its tags.  To efficiently render those tagged ranges, the Renderer would have to figure out how to use the fewest elements to archive it, and how to re-use elements to avoid DOM manipulation. Ideally it should key on a unique row id, so scroll events or static re-render doesn't cause DOM manipulation for rows that remained in the viewport and did not change.

Interface IComponent

A BaseComponent that implements the IComponent with empty implementations for each interface would probably be ideal, not many components would use everything.

I think basically we are looking for a way to tag a certain range of characters within the viewport, and then render the visual representation of this character range based on its tags.

Pushing this component idea, instead of trying to do this all at once, we could split it all up completely:

Renderer component renders the text
BackgroundRenderer component renders the background
Linkifier component renders the links on top (don't even touch the spans with text, just overlap ones on top?)
Selection component renders the selection

We can keep talking about this, but I wouldn't want any work to begin until the follow issues are resolved:

TS conversion https://github.com/sourcelair/xterm.js/issues/335
Investigate screen readers (may impact the design) https://github.com/sourcelair/xterm.js/issues/731
Truecolor support https://github.com/sourcelair/xterm.js/issues/484
Buffer memory improvements https://github.com/sourcelair/xterm.js/issues/791

Maybe componentization belongs in a new issue though?

@Tyriar I agree . Let me summarise on the Virtual DOM concept and your ideas above:
A Virtual DOM is a representation of the real DOM, but not based actual DOM nodes, but on a data structure. If this data structure is mutated, the Virtual DOM implementation will diff the changes between the old and the new data structure, and update the underlying real DOM to reflect those changes.
This means that components that want to modify the DOM have to alter the data structure, which will then be automatically reflected on the real DOM.
The way this Virtual DOM data structure looks is up to us. React and other Virtual DOM implementations use hyperscript h(...) or jsx (which transpiles to hyperscript) to describe the Virtual DOM data structure.
The big advantage we have is that we operate on a fixed sized grid (rows / cols), where the position and boundaries of a character within the grid / viewport can be easily calculated. This allows us to have multiple stacked layers (background, foreground, selection, links, ...) where elements inside those layers can be absolutely positioned. One example would be a background layer, where the background color would be a div with that background-color, that is absolutely positioned to exactly match the position of the characters that have this background color. Another example is the text layer, where every row is a div that contains the plain text entries (with the exception of double-width and non-ascii characters that would have to be wrapped into a span to maintain a fixed size).
So what is our hyperscript?
I think components should use an API where they can request a layer, and then draw stuff onto that layer using relative x, y row/col coordinates (like in term.buffer.lines.get(y)[x]). The Virtual DOM renderer will then take care of translating those relative positions to the actual position in the DOM (also respecting double-width characters etc).
Example: Selection Manager
// gets a new blank layer that can be diffed with
// a previous layer of the same name (if existent)
let layer = term.getLayer('SelectionManager');
layer.class('selection-manager');

// draw the upper rect of the selection
// usage: layer.draw(type, startX, startY, endX, endY);
let rect = layer.draw('div', selectionStartCol, selectionStartRow, ...);

// set background and class
rect.style('background-color', '#ABABAB');
rect.class('xterm-selection-start');
...

Example: Text Renderer
let layer = term.getLayer('TextRenderer');
layer.class('text');

for (let y=0; y<rows.lengths; y++) {
  let row = rows[y];
  let rowRect = layer.draw('div', 0, y, term.rows, y + 1);

  for (let x=0; x<row.length; x++) {
    // get consecutive single-width ascii chars and draw them in the
    // same rect. create a new rect for every other char
    let char = row[x];
    let charRect = rowRect.draw('span', x, y, x + 1, y + 1);
    charRect.text(char[1]);
    ...
  }
}

Can you feel it? This feels nice! Drawing something is completely decoupled, no need for a shared underlying view model and no more messing around with the DOM directly!

Moved the component idea to https://github.com/sourcelair/xterm.js/issues/808

@mofux something like that would be cool yeah. Doing the actual text would be the hardest part as it happens so frequently, we might need to continue doing that layer non-absolutely. It is also the main one that needs to work on screen readers.

I actually think that positioning things absolutely should speed up the render performance, because the browser can skip many layout calculations. For screen readers... I'm not sure if they really consider for the position css attribute, or if they are interested in the order of the DOM nodes (which should be okay then).
I would like to write a prototype of the Virtual DOM renderer with the concept stated above and share once I find some time, so we can further iterate and performance test on that 🤓

@mofux sounds good.
RE absolute: It's definitely worth benchmarking the two, I would think the fact that each absolutely positioned span is a new layer and there could potentially be hundreds would be bad for perf.

Oh now I see what you mean, maybe there should be an additional api like this:
let rowRect = layer.draw('div', ...);

rowRect.appendText('I like ');

let specialCharSpan = rowRect.appendInline('span');
specialCharSpan.class('xterm-normal');
specialCharSpan.text('🤓');

rowRect.appendText(' faces');

Which would create a stack:
['I like ', 🤓, ' faces']

That is finally rendered as:

I like 🤓 faces

where only the div is absolutely positioned. I'll try to figure out a nicer and more consistent API syntax when implementing the prototype.

Just thinking, another perk of having a drawing abstraction in between: it would allow us to implement a drawing engine that is not based on actual DOM elements - for example we could render the screen in a canvas or svg or even in webgl, which should boost the performance even further 😎

Closing in favor of https://github.com/sourcelair/xterm.js/issues/935, the IRenderLayer interface I landed on ended up being very similar in shape to the IComponent above 😄


Add basic "snapshot" test

Hi there, I made a first basic tape test as you described in https://github.com/juliuste/westminster-svg/issues/1. If this is what you're looking for, I'd be happy to write a few more general test cases (also for westminster)!

Looks nice! As you mentioned, having another test case for more than just 2 seats would be nice, if you want to do that 👍 (Even if not, thank you! 😄)

Should I merge this or do you want to add something? (Like another test case)

Just wanted to make sure it was what you were looking for before investing too much time :) I'll add a few more test cases and re-commit.

Maybe put the snapshot in a file, e.g. test/2-parties-no-seat-count.json?

#6

Alright, I just added a few more cases, including your demo data from the readme. Please merge if it looks good to you!
@derhuerst thanks for the suggestion - I moved the test data into a separate directory, but JSON (especially many undefined properties) did not play nice with tape's deepEqual(). So I'm just importing JS objects. More readable?

Thank you very much!


Changes kops version to a commit

Issue #, if available:
Description of changes:
Related to https://github.com/aws/eks-distro-build-tooling/pull/969
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

/pprove

/lgtm

/approve

/approve


Fix: fix small cli interface issues

Fix(reprensenter): fix variable name for input & output dirs
Fix(cli): force recompilation

Forgot these 2 minor fixes for the cli

Before I merge this, I'm gonna write a smoke test so that we know it works.


Orchard balances are not refreshed

Describe the issue
Orchard balances are never set in the SdkSynchronizer, so the flow is always reporting a value of null.
As part of fixing this, we should rename the RustBackendWelding API which has a method getBalance to getSaplingBalance and add a new API for getOrchardBalance that can be leveraged from within SdkSynchronizer.refreshAllBalances
See https://github.com/zcash/zcash-android-wallet-sdk/blob/61f1c1a9cb813736051613d77acd9c41021b2e6c/sdk-lib/src/main/java/cash/z/ecc/android/sdk/SdkSynchronizer.kt#L385

This is a duplicate of https://github.com/zcash/zcash-android-wallet-sdk/issues/682


Authentication failed for storage methods

There is something amiss in the authentication method.
Repro:
✘-101 frcognoarch:~/src/rust/AzureSDKForRust [master {origin/master}|✔]> cargo run --example container00 pippo
    Finished dev [unoptimized + debuginfo] target(s) in 0.10s
     Running `target/debug/examples/container00 pippo`
thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: UnexpectedHTTPResult(UnexpectedHTTPResult { expected: 200, received: 403, body: "\u{feff}<?xml version=\"1.0\" encoding=\"utf-8\"?><Error>AuthenticationFailed<Message>Server failed to authenticate the request. Make sure the value of Authorization header is formed correctly including the signature.\nRequestId:983dccaa-901e-014f-27a8-04b49b000000\nTime:2018-06-15T12:55:45.8895570Z</Message><AuthenticationErrorDetail>The MAC signature found in the HTTP request \'xwfkhbM6p95SgtaAr1shmrDU8HFOfzpSxqqgKOgbsNo=\' is not the same as any computed signature. Server used following string to sign: \'GET\n\n\n\n\n\n\n\n\n\n\n\nx-ms-date:Fri, 15 Jun 2018 12:55:45 GMT\nx-ms-version:2017-11-09\n/azureskdforrust/\ncomp:list\ninclude:metadata\nmaxresults:5000\'.</AuthenticationErrorDetail></Error>" })', libcore/result.rs:945:5
note: Run with `RUST_BACKTRACE=1` for a backtrace.

I've got the fix in the refactor branch, I will try and extract it to patch master.

Available in pull request https://github.com/MindFlavor/AzureSDKForRust/pull/49.

Merged


Thoughts on Implementation 1

The purpose of the playground is to brainstorm and explore serialization approaches, so any serialization data formats and code are fine - the only requirement is that they must conform to the spdx-3-model, including adapting to the model as PRs are accepted into it.
That is the reason for using camelCase property names, the model (e.g., Element) requires them.
@nishakm: with that in mind, here are some random thoughts on simple_acme.json:

CreationInfo is a datatype, not an Element, so it doesn't have an spdxId property.  That isn't immediately obvious from the model file; the only way to tell is that datatypes don't have SubclassOf metadata that chains back to Element.
The playground representation makes it obvious exactly what properties each element and datatype can have.

  "creationInfo": {
    "spdxId": "urn:sbom-acme-timestamp-5cfc33f3-9a0b-436c-8d81-bc8d9ed8ae25",
    "specVersion": "3.0.0",
    "created": "2023-07-28T15:58:20Z",
    "createdBy": [
<EMAIL_ADDRESS>      "urn:acme.com-4fe40e24-20e3-11ee-be56-0242ac120002"
    ],
    "profile": [
      "CORE",
      "SOFTWARE"
    ],
    "dataLicense": "CC0-1.0",
    "createdUsing": []
  },

profile has type ProfileIdentifierType which also uses camelCase names, not CAPITALS.  I hadn't noticed that until just now, and need to change my examples from PascalCase to camelCase profiles.
Each Element has a type which has to be captured in all serializations somehow.  This example has "elements" and "relationships", but the specific types (e.g., Relationship or LifecycleScopedRelationship) have to be expressed in the JSON somewhere. Since this is a playground any way of doing it is an acceptable idea to be considered, but I use a property name (e.g., annotation) to designate each element type (Annotation), and all elements, including relationships, go in a single element property in the payload.  Note that the logical model does not define serialization format, so having elements and releationships properties is not wrong, you just need to be able to reconstruct every element type when parsing the payload.

@davaya My biggest issue with implementation1 is the missing type key which indicates what concrete class to use when converting the serialization back into the model. I'm willing to take that as a deal breaker and move on to implementation 2. Would you mind if I submit some additions to it?

@davaya is there a place where these conventions are documented? Do they apply to all serialization formats?

Apologies! You have generated the conventions in the model folder here. It doesn't match the current implementation in https://github.com/spdx/tools-python/tree/main/src/spdx_tools/spdx3 which has different names for the ProfileIdentifierType class properties (I'm guessing because it's not python convention to name properties in camelCase unlike other programming languages)

Ahh - I didn't notice that the tools model was so out of sync with the actual model.  I didn't generate the conventions, the spdx-3-model is the "single source of truth", and they changed from UPPERCASE to camelCase vocabularies quite a while ago. ProfileIdentifierType was just created in May, but the diagram was changed from UPPER to camel last December and the tools haven't been keeping up.
There is a PR in Python tools to sync automatically but it hasn't yet been merged.


Obtain scope of CRD instances from its manifest as a fallback

Before this, we were only obtaining the scope of CRD instances from the cluster.
However, this wasn't good enough if the Git repository contained both the CRD manifest and instance manifests.
Fixes #1825

I case you are wondering about the last commit amendment, I just renamed ResourceDefinitionScopes to ResourceScopes

K


fix: substitute moment in npm challenges

Checklist:

[x] I have read freeCodeCamp's contribution guidelines.
[x] My pull request has a descriptive title (not a vague title like Update index.md)
[x] My pull request targets the main branch of freeCodeCamp.
[x] I have tested these changes either locally on my machine, or GitPod.

Closes #42294

The challenges work as is, but it looses the interactivity. As there is only one version of freecodecamp, the challenge Manage npm Dependencies By Understanding Semantic Versioning doesn't require any changes as there isn't a different version to ask the camper to change it to.

Hey @ieahleen - here's an empty example package we can use for these lessons: https://www.npmjs.com/package/@freecodecamp/example
I published a few different versions to cover the concepts in the lessons, let me know if you need any more versions.

__
  Summary: :hammer_and_wrench: This code needs a fix

Done, thank you @naomi-lgbt ! Now this is ready for review


Bump Wireshark to 2.0.0rc2

Thank you for the contribution. It was merged directly as f420a5b60b329337d3515b41254e3a1397fb75a4 to keep commit history cleaner. Your contribution is still credited to you.


[12.0.0-next.9] nodes can't he dragged after they are hidden/unhidden in  flow with parent nodes

Describe the Bug
I have the following sequence:

a flow where I have parentNode defined in some nodes in my tree
one or multiple nodes can be dragged.
i hide/unhide a node/multiple nodes
the nodes i toggled are not draggable anymore.

I am running 12.0.0-next.9. If I switch the imports to 11.10.4 it works as expected.
there are no messages in the console.
here is the
Your Example Website or App
No response
Steps to Reproduce the Bug or Issue

render a flow with parent relations
2.using a button, hide / unhide a node
the node we toggled can't be dragged anymore

Expected behavior
The node should be draggable after toggle hidden.
Screenshots or Videos
No response
Platform

OS: macOS 14.0
Browser: Chrome (Version 121.0.6167.184 (Official Build) (arm64); or Safari
Node: v18.17.1
nextJS : "^13.5.6"

Additional context
No response
here is the code to reproduce the issue. I gathered everything in one page:

import { BaseNodeData } from '@enchante/shared/types';
import { Button } from '@radix-ui/themes';
import {
  ReactFlowInstance,
  ReactFlow,
  Node,
  useEdgesState,
  useNodesState,
  DefaultEdge,
  Panel,
} from '@xyflow/react';
import { useEffect, useState } from 'react';
import 'reactflow/dist/base.css';

const mockInitialNodes: Node[] = [
  // one parent for "1", "2"
  {
    id: '0',
    data: {
      label: 'Test node 0',
    },
    position: { x: 0, y: 0 },
    // type: 'leaf-big',
  },
  {
    id: '1',
    parentNode: '0',
    data: {
      label: 'Test node 0-1',
    },
    position: { x: 50, y: 100 },
    // type: 'custom-one',
  },
  {
    id: '2',
    parentNode: '0',
    data: {
      label: 'Test node 0-2',
    },
    position: { x: 50, y: 200 },
    // type: 'custom-one',
  },
];

export default function Dashboard3Page() {
  const [nodes, setNodes, onNodesChange] = useNodesState<Node<BaseNodeData>>(
    [],
  );
  const [edges, setEdges, onEdgesChange] = useEdgesState<DefaultEdge>([]);
  const [rfInstance, setRfInstance] = useState<ReactFlowInstance | null>(null);

  const toggleHideNode = () => {
    console.log('nodes: ', nodes);
      rfInstance?.setNodes(ns => ns.map(n => ({ ...n, hidden: !n.hidden })));
  };

  useEffect(() => {
    if (rfInstance) {
      rfInstance.setNodes(mockInitialNodes);
    }
  }, [rfInstance]);

  return (

          <ReactFlow
            {...{
              edges,
              nodes,
              onNodesChange,
              onEdgesChange,
              onInit: setRfInstance,
            }}
          >
            <Panel className="flex gap-4 p-4">
              <Button onClick={toggleHideNode}>toggleHideNode</Button>
            </Panel>
          </ReactFlow>

  );
}

Thanks for the report! Feedback about v12 is super helpful :) We will check out what is wrong here.

Glad I can help even a little bit.
To give you context: i have an beta app written in next 13 and reactflow 11
I am optimizing (rewriting) and adding new features to the flow logic. I
intend to do it on v12 so i hit prod on the latest version.
As a preliminary feeling, i like what you did with it. Bring more clarity!
I was working on collapsable nodes when i found this.
I will hold for a few days and maybe, just maybe you manage to fix this
little thing 🤭
After, i’ll try more funky stuff and let you know how it goes on v12.
If it is of interest to you, I managed to arrange children nodes in parents
based on html logic: you supply a classname string to the parent with a
tailwind like syntax, based on gap, paddings, margins, I am able to figure
out x/y for children, and the computed width/height of the parent. So
add/delete children in parents resizes everything automatically. So just
one data prop for each parent and no need for system params for arranging
them anymore.
Hey, great work with react flow!
I was looking for a project to use it for 2 years now :))
Sorin
On Wed, 21 Feb 2024 at 13:35, Moritz Klack @.***> wrote:

Thanks for the report! Feedback about v12 is super helpful :) We will
check out what is wrong here.
—
Reply to this email directly, view it on GitHub
https://github.com/xyflow/xyflow/issues/3931#issuecomment-1956459390,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ACROOY7TRADR6FU2LKS75J3YUXLYLAVCNFSM6AAAAABDSOC36WVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSNJWGQ2TSMZZGA
.
You are receiving this because you authored the thread.Message ID:
@.***>

Will be fixed with the next release!

thank you!
looking fw for next.10 👍

fixed!


Changes dependant on targetting 6.0

List of known changes we should do in Yarp once adding a 6.0 target (and/or more convenient after dropping 3.1):

[ ] Use non-validated header enumeration https://github.com/dotnet/runtime/issues/35126#issuecomment-854040319
[ ] CancellationTokenSource pooling #902
[ ] Call Cancellable/Sync overloads of HttpContent.ReadAsStream* #770
[ ] Deprecate/modify ActivityPropagationHandler based on functionality exposed in runtime dotnet/runtime#50658
[ ] Use Random.Shared in RandomFactory

Feel free to add anything I may be missing

How about using Random.Shared in RandomFactory?

Note adding 6.0 support is independent from dropping 3.1 support. Are there any of these you think are prohibitive to #if light-up on 5.0 or 6.0 while still supporting 3.1?

For #770 we should just wait to drop 3.1. For others it's actually that we need 6.0.

Just move the ifdefs to extension methods that noop, it'll keep the code clean. It's the technique we use in Pipelines and Channels in the BCL.

https://github.com/dotnet/runtime/blob/41af30ca291e0435083c0d4b5d70e2939e0dbc3d/src/libraries/System.IO.Pipelines/src/System/IO/Pipelines/StreamExtensions.netstandard.cs
https://github.com/dotnet/runtime/blob/41af30ca291e0435083c0d4b5d70e2939e0dbc3d/src/libraries/System.IO.Pipelines/src/System/IO/Pipelines/CancellationTokenExtensions.netstandard.cs

You could do the same with TryReset and assume it always returns false.

[ ] Implement the cancellable overload of HttpContent.SerializeToStreamAsync
https://github.com/dotnet/runtime/blob/c14ac488cc5f7d2ad71e7f81d6a05a1da8c76237/src/libraries/System.Net.Http/src/System/Net/Http/HttpContent.cs#L354
https://github.com/microsoft/reverse-proxy/blob/d593701b5839ddd8d2422c2044d1e0ada74f2b18/src/ReverseProxy/Proxy/StreamCopyHttpContent.cs#L119

[ ] Doc https://github.com/dotnet/aspnetcore/pull/33776 here: https://github.com/microsoft/reverse-proxy/blob/16ab855a5be980a0cf5fd21e9a7028190b6e7dda/docs/docfx/articles/http-client-config.md#httpclient

Use LoggerMessageAttribute.

Use PeriodicTimer.

Use WaitAsync task timeout extensions instead of TimeoutAfter

We are only using this within EntityActionScheduler where the API surface is different from what PeriodicTimer offers.

We are only using this within EntityActionScheduler where the API surface is different from what PeriodicTimer offers.

I assumed the overall performance might be better.

Now that we are targeting 6.0 and most items have been completed, I moved the remaining ones into separate issues (#1346 #1347)


Read long log lines from file storage correctly

Log lines may contain up to 1 MB of text, but with default settings bufio.Scanner only reads lines up to 64k in length and fails on anything larger, rendering the Scanner unusable.
As a result, the user won't see anything after the first very long line, including the line itself.
when:
  event: push

steps:
  logs:
    image: ubuntu:24.04
    commands:
      - seq 1 3
      - tr -dc '[:alnum:]' </dev/urandom | head -c70k
      - echo
      - seq 4 6

The output should be:
1
2
3
zkwmLrpYmk6XcgJZiYqzNO3hsIV26HJfVQfyvSo1ccrMqP ... very long line of random text
4
5
6

Instead, Woodpecker cuts everything after 3:
1
2
3
(end)

I tested this on jobs with up to 20 MBs of output (simply update 70k with something like 20M).

please dont forcepush if you can! it makes reviews harder and we squashmerge anyway ...

https://ci.woodpecker-ci.org/repos/3780/pipeline/19786/24 ... well

thanks for not running at the dedicated pull :/

If you d'like to create a pull?


I can help you, to make your project easier to handle.

Hi Nicolas,
I do like your project.
Your directory structure is almost there, to make it easy to maintain AND fit the TW rules. I can help you if you want.
I'm maintaining https://github.com/wikilabs, which uses a different approach, but that doesn't really matter.
In https://github.com/wikilabs/editions/tree/master/wikilabs-ghub.io-server you can see a bin directory and a https://github.com/wikilabs/editions/blob/master/wikilabs-ghub.io-server/package.json which contains a command to "build" or "stage" ALL editions with 1 command.
After staging, I do some manual tests and deploy all editions, themes, libraries and languages with 1 simple git push.
A similar approach may work for you.

TW plugins do have a namespace like: $:/plugins/<author>/<plugin-name> .. Your directory structure doesn't reflect this.
It would need to be: plugins/<author>/projectify  .. your language plugins would need to be moved to a structure similar to: languages/de-DE-<plugin-name>. The editions are OK.
What do you think?

@pmario thanks for taking the time to look into the project structure!

A similar approach may work for you.

I'm not using GitHub pages (or GitHub actions for that matter), and I usually try not to depend on GitHub too much. The project is actually hosted on my own Gitea instance at https://gitea.petton.fr/nico/Projectify but because of the community, it is synced to this GitHub repo.
For CI/CD, I'm using a drone instance hosted at https://drone.petton.fr, however I'm not using it for Projectify yet.

TW plugins do have a namespace like: $:/plugins// .. Your directory structure doesn't reflect this.

That's true, I started this way and never bothered to update the directory structure, I'm blaming laziness :)

@pmario thanks for taking the time to look into the project structure!

A similar approach may work for you.

I'm not using GitHub pages (or GitHub actions for that matter), and I usually try not to depend on GitHub too much. The project is actually hosted on my own Gitea instance at https://gitea.petton.fr/nico/Projectify but because of the community, it is synced to this GitHub repo.
For CI/CD, I'm using a drone instance hosted at https://drone.petton.fr, however I'm not using it for Projectify yet.

TW plugins do have a namespace like: $:/plugins// .. Your directory structure doesn't reflect this.

That's true, I started this way and never bothered to update the directory structure, I'm blaming laziness :)

It would need to be: plugins/author/projectify

Hmm, I'm actually not sure I want to do this.
As far as I can see from boot.js, TiddlyWiki will try to load plugins from the plugins as a flat list of directories. I might be missing something though, but unless I do, I'd rather stick to the current directory structure rather than having to set TIDDLYWIKI_PLUGIN_PATH in my build scripts.
Maybe that's why @saqimtiaz used the same structure in https://github.com/saqimtiaz/streams as well?

It would need to be: plugins/author/projectify

Hmm, I'm actually not sure I want to do this.
As far as I can see from boot.js, TiddlyWiki will try to load plugins from the plugins as a flat list of directories. I might be missing something though, but unless I do, I'd rather stick to the current directory structure rather than having to set TIDDLYWIKI_PLUGIN_PATH in my build scripts.
Maybe that's why @saqimtiaz used the same structure in https://github.com/saqimtiaz/streams as well?


Update LAB_01L01_Prepare_for_deployment_of_AVD_ADDS.md

Module: 00
Lab/Demo: 00
Fixes # .
Changes proposed in this pull request:

Test Patch 2


Add some reasonable timeouts to API server

Summary
Adds a 1 minute hard coded read, header read, write and idle timeout. This helps prevents accidental or malicious connection exhaustion of the API server.
Implementation note
While simply setting ReadTimeout would have set the header read and write timeouts to the same value, I think setting them explicitly helps inform the future code readers about the server behaviour in case they're unfamiliar with the behaviour of http.Server timeouts.
Ticket Link
Fixes #336
Release Note
* Added 1 minute read, write and idle timeouts to API server

Will this close all open connections, i.e. will this stop the connection to Trillian? Or should we also add a timeout for outbound ?

This is just for inbound API requests. Timeouts on the outbound requests to the CT log are controllered here and it seems are set to 30 seconds https://github.com/sigstore/fulcio/blob/main/pkg/ctl/ctl.go#L37

LGTM but it hit a merge conflict with your other one!

Rebased on main and should be good to go now :)


Support detached signatures in libsodium 0.6.1

libsodium now supports detached signatures.
http://doc.libsodium.org/public-key_cryptography/public-key_signatures.html
https://github.com/jedisct1/libsodium/issues/179

added to the develop branch


Cosmos OSS MI

Description

Adds a UseManagedIdentity option to config
Adds role definition assignment to ARM template
Gains

Application can use MI to connect to CosmosDB to read and write on the data plane

Impacts:

Throughput settings can no longer be modified
Stored procedures can no longer be installed
Partitions can no longer be read

Note: The Integration tests will setup and tear down test collections which requires more privileges than what MI can currently provide, for this reason the Host and Key are will written to the KeyVault in the ARM template.
Related issues
Addresses AB#96632, #3249
Testing
E2E tests should all still run to verify connection and existing functionality.
FHIR Team Checklist

Update the title of the PR to be succinct and less than 65 characters
Add a milestone to the PR for the sprint that it is merged (i.e. add S47)
Tag the PR with the type of update: Bug, Build, Dependencies, Enhancement, New-Feature or Documentation
Tag the PR with Open source, Azure API for FHIR (CosmosDB or common code) or Azure Healthcare APIs (SQL or common code) to specify where this change is intended to be released.
[ ] CI is green before merge
Review squash-merge requirements

Semver Change (docs)
Patch|Skip|Feature|Breaking (reason)

Should we have a plan/method in place for handling schema changes in Cosmos before we merge this change in? I assume for OSS the steps would be to turn MI off, apply change, then turn it back on.

Closing until we revisit and look into installing SPs and other dependencies


.dll loading does not work on Windows

Hi,
Not sure if it's just me but I'm having troubles running your code on Windows. Firstly if was failing to load the library - adding ".dll" extension fixed it. However then it started complaining the .dll could not be deleted from tmp directory because library still in use. After spending some time on researching online seems like it is a popular problem on Windows. I've changed WkHtmlToPdfLoader.load() method to skip file deletion and also skip new .dll file creation if it is already there. I understand it leaves the trash behind but it's good enough for me since it is only a single file and Windows are used by developers only.
Please find adjusted WkHtmlToPdfLoader.java below. Let me know if I'm missing something and there is an easier way. If you find my code changes are reasonable I can open a PR.
class WkHtmlToPdfLoader {
    static WkHtmlToPdf load() {
        Path tmpFile;
        try {
            String prefix = "htmlToPdfLoader";
            String suffix = Platform.isWindows() ? "nativeLibrary.dll" : "nativeLibrary";

            if (Platform.isWindows()) {
                Optional<Path> lib = findExistingLibrary(prefix, suffix);
                if (lib.isPresent()) {
                    return (WkHtmlToPdf) Native.loadLibrary(lib.get().toAbsolutePath().toString(), WkHtmlToPdf.class);
                }
            }
            tmpFile = Files.createTempFile(prefix, suffix);
            try {
                try (InputStream in = WkHtmlToPdfLoader.class.getResourceAsStream(getLibraryResource())) {
                    Files.copy(in, tmpFile, StandardCopyOption.REPLACE_EXISTING);
                    return (WkHtmlToPdf)Native.loadLibrary(tmpFile.toAbsolutePath().toString(), WkHtmlToPdf.class);
                }
            } finally {
                if (!Platform.isWindows()) {
                    Files.deleteIfExists(tmpFile);
                }
            }
        } catch (IOException e) {
            throw new RuntimeException(e);
        }
    }

    private static Optional<Path> findExistingLibrary(String prefix, String suffix) throws IOException {
        Path tmpDir = Paths.get(System.getProperty("java.io.tmpdir"));
        return Files.walk(tmpDir, 1, FileVisitOption.FOLLOW_LINKS)
          .filter(p -> {
            String fileName = p.getFileName().toString();
              return fileName.startsWith(prefix) && fileName.endsWith(suffix);
          })
          .findAny();
    }

    static String getLibraryResource() {
        return "/wkhtmltox/0.12.4/"
                + (Platform.isWindows() ? "" : "lib")
                + "wkhtmltox"
                + (Platform.is64Bit() ? "" : ".32")
                + (Platform.isWindows() ? ".dll" : ".so");
    }
}

@extrahour I've pushed a fix.
Also, would like to thank you for reporting these issues and contributing :)


be able to show only titles in lists

have a setting to show titles only in lists (as opposed to title plus summary)

There is already an option to display only the titles in list mode.


Cookie location under Windows and program crashing after selection

Hey,
first time around the tool worked fine, login worked and I managed to delete some data to test the waters.
Now that I want to delete more, the program stopped working.
After selecting the timespan and activities to delete, the program instantly crashes without any error code or message.
I ran it as a normal user, with admin access redownloaded the latest binary file.
What I haven't yet tryed out is to delete the cookie that keeps my login information, maybe that is where the problem is located.
Where is the cookie stored on windows? I couldn't yet find it.

Same problem here. Without filters, it loads for a little while and then crashes. If I set up the rateLimit though, it immediately crashes after hitting enter.

Could you open a terminal and run the .exe from there? Then you should see an error after the program completed.


Storing UUIDs on GitHub issues

I've got the bridgeBot with LriMap working well now.
Turned out that DXOS wasn't really helping us much, and neither was Cambria (translating fields, but not LRIs)
So far Tiki and GitHub are supported, although Tiki Push is not fully tested yet, and the whole system needs more testing in general
That brings us to the next big topic, which is very visible during debugging: When you wipe out the database, all issues get duplicated, because if there are n issues, each mirrored in m replicas, then BridgeBot thinks those are all originals, so it will create n * (m-1) duplicate issues. This can be mitigated if we store the UUID on synced issues (issues that are a copy of a remote issue). For Tiki and Jira we can add a custom field for this. For GitHub we should probably insert a comment. Ah, can you actually hide text in a comment? Let's try: "" is that visible? -> looks like it's not, great!

This comment has:
<!--- BridgeBot comment ID: 5f6aa6b1-d231-48f4-bff5-3f7324f5da4d -->

as its first body line :)

With Timesheets, we added a unique URI to dereference duplicates. I will add that to Tasks tracker as well from Tiki side.


Expose public API to reset mouse cancelling for testing touch

Remove undocument event.__polymerSyntheticTouch hack
Fixes #3540

LGTM :+1:

RSLGTM from @kevinpschaaf


Improve doc string support

This PR:

Cleans up the metadata_model function (which includes eval) so that traits are only overloaded if they are explicitly specified as keyword arguments. This means the default behaviour of a trait is what the fallback definition in src/model_traits.jl specifies. Previously, this utility function would overload a number of traits, whether needed or not, with unspecified traits getting a value from metadata_model's kwarg default, which in principle could be different, which is asking for trouble. In practice I expect the change actually makes no difference (except in case discussed next) although some further downstream testing is in order.
Changes the default value of docstring from some short value constructed using other traits to the full docstring of the model, so this is available in the metadata. I don't think having a separate short docstring has panned out as useful, but we also have:
Add human_name (already in StatisticalTraits.jl with a sensible default) to MODEL_TRAITS and allow overloading with metadata_model.
Allow metadata_model to overload supports_class_weights.

This PR is technically breaking, as it will change the default value of docstring and hence what is returned by, eg, models("some needle") in MLJModels (which will, however, be far more useful).  This might effect a few tutorials and doc examples. A (hopefully) non-breaking alternative is to revert the docstring default in this PR to the previous behaviour, and manually update the docstring trait defined in each model interface package, which  released as breaking.
Comments welcome.
cc @OkonSamuel @tlienart

Codecov Report

Merging #139 (39852ca) into dev (d207f88) will increase coverage by 0.25%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##              dev     #139      +/-   ##
==========================================
+ Coverage   87.29%   87.54%   +0.25%
==========================================
  Files           8        8
  Lines         299      289      -10
==========================================
- Hits          261      253       -8
+ Misses         38       36       -2

Impacted Files
Coverage Δ

src/MLJModelInterface.jl
100.00% <ø> (ø)

src/metadata_utils.jl
100.00% <100.00%> (ø)

src/model_traits.jl
73.46% <100.00%> (+1.77%)
:arrow_up:

Continue to review full report at Codecov.

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

Local testing (in conjunction with [this PR] for DecisionTree.jl which uses the new functionality):

[ ] MLJEnsembles
[ ] MLJIteration
[ ] MLJBase
[ ] MLJSerialization
[ ] MLJTuning

Iteration tests. I've been working on some global integration tests for the MLJ ecosystem. These are still in development but I have tested the current PR works with 147 out of 186 models in combination with evaulate!, pipelines, tuning, iteration, and thresholding (wherever these apply) and have only encountered a few unlrelated issues.
So I'm viewing this as well and truly tested. I think the mimimal "breaks" due to doc-string changes (and consequent changes in model registry searches) do not justify a breaking release.


contractcourt+htlcswitch: reliable handoff of contract resolutions

Today in lnd, if we need to timeout or settle and HTLC on-chain, then in order to cancel/settle the incoming HTLC, we send a message to the switch to clean up the incoming link. This message then gets passed to the switch via a resolutionMessage. However, due to a lack of reliable handoff between the switch and the resolver, if lnd goes down during the handoff, then the outgoing HTLC will be settled/expired, but the incoming HTLC will be left lingering. There's a done channel that's closed in an attempt to synchronize, but it's only closed once the HTLC settle/fail is inserted into the mailbox of the link, and not when it's been fully committed like the normal forwarding packages.
There're a few ways we can go about fixing this:

Modify the resolvers themselves to continually try to send the resolution message to the switch. As the circuit map will be cleaned up once the resolution is fully committed, once the attempt fails, the resolver knows that the HTLCs have been fully cleaned up.
Add persistent state to the switch, which is synchronously written before returning to the resolver. This state is then checked on start up, similar to the forwarding packages to re-insert any relevant messages into the mail box of the target link.

@Roasbeef Isn't it most straight-forward to use the channel SettleFail filter? Wait in the resolver for the filter bit to be set, similar to how the outgoing link would be notified if the link was still there.

Started looking into this again. If we want the resolver to check the settle/fail filter of its channel, we need to have the commit height for which we are resolving. It is not yet clear to me whether this value is available for all close types in the channel arbitrator. It is not persisted as part of a commit set in briefcase.

There are also the HtlcFailNowAction resolutions that currently don't have a resolver, but probably should have. Otherwise an incoming htlc may not get cancelled if lnd goes down after hand off in channel_arbitrator.


Text from the campaign setup help appears to be unavailable for translation.

Select a language other than English (German for example).
Create a new campaign.
In the screen where you can select heroes, click the question mark (in order to display the help)
=> Top left, it will display "Mission Type" / "Mission Name" / "Tier 1", all in English.
It looks like these texts cannot be translated to another language.
This may be text missing from the translation app ?

Hi ghost!  In the next update, there will be translation support for the UI items you mentioned.  It'll be up to translators to actually translate those items, which will still be in English by default.  I know French and German will be translated for sure, and maybe Spanish.


Rejected connections are not handled

Hello,
when I connect to a socket that rejects the connection in the sockets connect function, i get a gun error
14:20:29.039 [error] unknown message {:gun_response, #PID<0.532.0>, #Reference<0.1111790471.536608770.196337>, :fin, 403, [{"cache-control", "max-age=0, private, must-revalidate"}, {"content-length", "0"}, {"date", "Fri, 18 Jun 2021 12:20:28 GMT"}, {"server", "Cowboy"}]} heard in Slipstream.Connection.Pipeline please open an issue in NFIBrokerage/slipstream with this message and any available information.

and the slipstream handle_disconnect callback is called several seconds (10 or more) later with the reason :closed_by_remote.
Proper handling via the handle_disconnect or maybe a new handle_reject callback would be nice.

Hi hi :wave:
Good catch! We totally missed this in testing.
#37 should fix this. You should be able to catch these with something like this in a module-based client:
@impl Slipstream
def handle_disconnect({:error, {:connect_failure, %{status_code: 403}}}, socket) do
  # try reconnecting or stop the GenServer...
  {:stop, :shutdown, socket}
end

I like the idea of a c:Slipstream.handle_reject/2 callback though, I'll keep that in mind.
This should be released as v0.7.0, but 0.7.0 also has a breaking change with how leaves are handled. Once #37 is merged the CHANGELOG should have everything you need to adjust your code if you use Slipstream.leave/2 anywhere.
Thanks for the report!


Set dapr/website repo to public

As per conversations we've had: the website shouldn't be private, it should be open source.

https://github.com/cncf/techdocs/issues/133#issuecomment-1268763515, https://github.com/cncf/techdocs/issues/133#issuecomment-1268776498
https://lists.cncf.io/g/cncf-dapr-maintainers/topic/94125877#69

We can use this issue to list concerns/processes.

Website repo is now public. Closing this issue.


sbt-scalafmt support

sbt-scalafmt downloads additional dependencies at run time, that are not part of the plugins' direct dependencies. This means sbtix doesn't pick them up, and they cannot be found when building in the sandbox.

but these plugins are not build-related. I think we can either support them or find a way to exclude them in sbtix.


code question

rendererEmitter.on code is
 on(event, fn) {
    const internalMethod = (internalEvent, ...internalDetails) => {
      if (this.ready) {
        this._call(fn, internalEvent, ...internalDetails);
      } else {
        this.q.push(this._call.bind(this, fn, internalEvent, ...internalDetails));
      }
    };
    if(event == 'navigate:gotourl'){console.log(this.q);}
    console.log('this.ready + ' + this.ready + 'event -- ' + event)
    this._internalEventWrappers[event] = this._internalEventWrappers[event] || {};
    this._internalEventWrappers[event][fn] = internalMethod;
    ipcRenderer.on(event, internalMethod);
  }

Why not use it directly
 on(event, fn) {
    ipcRenderer.on(event, fn);
  }

and  why set the.ready to true or false.

I don't know why you keep asking questions about the code but githuh issues is not the place to ask such questions.  Ask in gitter not in the issues section.

Sorry, this is the first time I've heard about gitter. I apologize for the inconvenience.
next, i will ask question in gitter.


Adding timeout for each API requests - otherwise api is hanging in case of non-reponse

Please include a timeout of a predefined period say 10 seconds or 15 seconds or maybe user defined in each of the api calls. Otherwise if it takes too long time to get response, the code is just hanging and is not recovering from the api call.
To be specific, using this few lines of code mentioned here will fix for all the requests globally.
https://stackoverflow.com/a/61366068/8315634

thanks for the resources @boral , will try to implement it soon.

hi @boral, this has been updated, timeout has been set to 30 seconds.


Cannot sign into team, also not asked to sign into team

Hey guys,
I just installed plaidchat over the top of the old slack-for-linux (by mistake). Ran into problems, cleared npm cache, uninstalled slack-for-linux and plaidchat, re-installed plaidchat (globally).
Any how... when I open plaidchat I am asked to sign in - however I am never asked for my team domain (so I am wondering where it comes from?).
This error is thrown repeatedly:
/usr/lib/node_modules/plaidchat/app/components/slack-window.js:139 Teams not loaded yet for "https://login.slack.com/". Waiting 100ms

Edit: this happens whether I open plaidchat via terminal, or via the launcher icon.

To make sure we are on the same page, can you confirm the following steps are occurring to you:

Plaidchat is launching
Plaidchat prompts you with Slack's login page
You enter your correct credentials
Upon successful login, you see a blank screen

If that is the case, are there any errors in the JS console? (open via Ctrl+Shift+I)
Side note: While all the current collaborators are male, I would prefer to keep plural pronouns gender neutral (e.g. "guys"). In the future, please try this list of alternatives: https://twitter.com/boennemann/status/610613306693320704

Hey, sorry for the confusion.

Plaidchat launches.
Enter the correct credentials
No successful login. The login error 'Sorry, we can't find an account with that email address' is thrown - however this is a false error. Can log in with those credentials online.
The error from the original post is what is shown in the developer console - namely:

/usr/lib/node_modules/plaidchat/app/components/slack-window.js:139 Teams not loaded yet for
"https://login.slack.com/". Waiting 100ms

Is thrown every 100ms (so it quickly gets to over 500).
I thought it strange that the app doesn't ask for the team? How does it know which team to sign me into? (I have multiple teams with that one account - same email, different passwords, but nonetheless it feels odd and the error suggests the app is having trouble finding the team).

Ah, it looks like Slack changed their login URL. Originally, Slack reserved https://login.slack.com/ as a login page. However, now that seems to be owned by a specific team. The new URL is:
https://slack.com/signin
Unfortunately, I am on a work computer at the moment and won't be able to cut a new release to repair this. I will consider high priority though so it should be patched within 48 hours.

@GrayedFox We have patched the issue in 2.6.1. Please upgrade to the latest version to verify the fix worked:
npm install -g plaidchat@latest

Hi, unfortunately the issue is not yet fixed. I have plaidchat 2.6.1 installed after running npm install plaidchat@latest and receive the exact same error?

We might have cached your last URL as login.slack.url which is now causing issues. Please try clearing the plaidchat config and re-running plaidchat:
rm -r ~/.config/plaidchat/
plaidchat

Haha.... ahhhhh. So, rm -rf ~/.config/plaidchat/ did not work.
But rm -rf ~/.config/slack-for-linux/  did!
Turns out it was a slack-for-linux relic. I also noticed as soon as I'd removed those config files, I was asked for my team domain again.
Cheers guys

Woot, glad to hear we got a fix =D


Protection support matrix dpm

under the support matrix it state that it must run on On-premises Hyper-V virtual machine. but this is not limited to a Hyper-V VM.
people may conclude that the an hyper-v environment is required.
Shouldnt it state that it can run as a "Virtual Machine" either on Hyper-v or VMware.?
Ref:
https://docs.microsoft.com/en-us/system-center/dpm/dpm-protection-matrix?view=sc-dpm-2019

@LittleGreenBag  moved to that repo: https://github.com/MicrosoftDocs/SystemCenterDocs-pr/issues/2552


Fixed log level configuration for Winston 3

This PR contains:

A unit test to demonstrate the behavior described in issue https://github.com/microsoft/node-diagnostic-channel/issues/115 .
Code which implements the correct behavior.

This is exactly the problem we are having right now, not respecting the log level that is being set. We really need this fix 😄 But I cant seem to find any new package/version being published, will this be done anytime soon?

@MRDNZ we are currently on release freeze but we should be able to release a new version next week


feat: stricter verification

When there are multiple identity or document status fragment running for a document, it's not possible to check that the document is valid under all issuers.
Solution
The initial solution was to map the issuers but turns out to be a bigger problem when document status was discovered to have the same problem as well.
Since we are moving to V3 with only one issuer, we decided to go with the approach that individual verification fragment will be more strict. Instead of skipping on unknown data, it returns an INVALID flag instead, causing the overall verification to fail.
This makes sure that there will not be a mix of to ISSUER_IDENTITY or DOCUMENT_STATUS fragment running.
Details

stricter checks on all existing 6 verification verification modules
use of withCodedErrorHandler to standardize error handling
invalid fragments are now typed with reason properties
alignment of all file names and fragment names, to be merge from #139 (not merging into this yet to improve readability)

Not Done

will prefer to rename location to identifier to have a standardized method to read the issuer identifier

I dont think I've seen text covering the following:

DOCUMENT_STORE + another
DID + another
DNS-DID + another
DNS-TXT + another

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Shared EquiZip, ZipLongest & ZipShortest implementation

This PR refactored EquiZip, ZipLongest and ZipShortest to use a common Implamentation, as well adds tests that were missing.
So, when extend EquiZip, ZipLongest and ZipShortest to 16 sequences, the change will be made more easily. This new common implementation also fix some important points.

current ZipShortest always consume the first sequence entirely, even when second sequence already ended.

current ZipLongest dont dispose sequences as soon as possible. Dispose occurs just when all sequences finished.

@atifaziz I would like to merge this before continue with the extensions of zip's to 16 sequences. Can you or @fsateler do the review?

@atifaziz all ajusts were done. about the new tests, all are related to the refactoring. the tests check about unnecessary computations, and fails for the current implementations.

@atifaziz improviments done.

Something more before merge ?

I'm still not satisfied with how ZipImpl reads as it's very hard to reason through the code. I've tried to improve the names but limit is still bothering me a lot. Otherwise the implementation is really solid in the sense that that it's really well-covered by the tests such that tests break no matter what little I change. 👍

I would like to work extending to 16 this weekend.

Have we talked about how you plan to go about this? Do you plan to use code generation?

I've tried to improve the names but limit is still bothering me a lot.

what do you think about the disposalsLimit name?

Do you plan to use code generation?

Yes, using C#. I will create a function that based in its argument, returns a string that is the function code. so we copy it and paste on the IDE. I know there is others ways to do it, but I did not learn about them, I prefered use C#, and turn the thing more programmatically. Here is an example of this approach on my Curryfy project: This  function generate the code of the Curry' s functions in the same file.

@atifaziz what do you think about 85d7ceb ? It help us avoid repetitive validation code.

what do you think about the disposalsLimit name?

I'm afraid it doesn't give me any more clarity than before. 😕

I know there is others ways to do it, but I did not learn about them

May be this is an opportunity to learn. So far, T4 has been used for code generation, which is templating based on C# and quite straightforward to learn. See also *.tt files in the repo for help.

I understood about the variable name. Since It is internal and local variable, we could merge the PR and rename It later when a better name appears without any breaking-change. What do you think? I would not like to stop our progress for this reason.

Since It is internal and local variable, we could merge the PR and rename It later when a better name appears without any breaking-change. …I would not like to stop our progress for this reason.

I agree.

which I am ready to do if you could revert 85d7ceb

done.


check all required files are present before upload

https://github.com/massdriver-cloud/massdriver-cli/pull/108#issuecomment-1225946737

dupe of: https://github.com/massdriver-cloud/massdriver-cli/issues/121


Loading new .csproj file with VS2017 fails in error.

I generated with new aspnetcore-spa and chose the Angular 2 2017 preview-3 template (.csproj) when generating the project (hit enter for everything else [yes]). When I tried to open the new .csproj with VS2017 RC I am not able to load the basic project and get an error. picture below

When I open the .txt file listed by VS2017 I see the following stack trace. Not sure what I might be doing wrong.
=====================
1/22/2017 2:19:51 PM
Recoverable
System.AggregateException: One or more errors occurred. ---> System.ArgumentNullException: Value cannot be null.
Parameter name: key
   at System.Collections.Generic.Dictionary`2.FindEntry(TKey key)
   at System.Collections.Generic.Dictionary`2.get_Item(TKey key)
   at Microsoft.VisualStudio.ProjectSystem.Designers.PhysicalProjectTreeProvider.ResolveDependentItems(Dictionary`2 pendingItemsByDirectory)
   at Microsoft.VisualStudio.ProjectSystem.Designers.PhysicalProjectTreeProvider.GenerateOriginalTree(ConfiguredProjectExports configuredProjectExports, CancellationToken cancellationToken)
   at Microsoft.VisualStudio.ProjectSystem.Designers.PhysicalProjectTreeProvider.<GenerateOriginalTreeAsync>d__117.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.VisualStudio.ProjectSystem.ProjectTreeProviderBase.TreeUpdateSubmission.<UpdateTree>d__25.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd(Task task)
   at Microsoft.VisualStudio.ProjectSystem.ProjectTreeProviderBase.<>c__DisplayClass95_0.<<Initialize>b__1>d.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.VisualStudio.ProjectSystem.ProjectTreeProviderBase.<>c__DisplayClass102_0.<<SubmitTreeUpdateAsync>b__0>d.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.VisualStudio.ProjectSystem.ProjectTreeProviderBase.<>c__DisplayClass114_0.<<SubmitTreeUpdateHelperAsync>b__0>d.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.VisualStudio.ProjectSystem.ProjectTreeProviderBase.<>c__DisplayClass102_0.<<SubmitTreeUpdateAsync>b__0>d.MoveNext()
   --- End of inner exception stack trace ---
---> (Inner Exception #0) System.ArgumentNullException: Value cannot be null.
Parameter name: key
   at System.Collections.Generic.Dictionary`2.FindEntry(TKey key)
   at System.Collections.Generic.Dictionary`2.get_Item(TKey key)
   at Microsoft.VisualStudio.ProjectSystem.Designers.PhysicalProjectTreeProvider.ResolveDependentItems(Dictionary`2 pendingItemsByDirectory)
   at Microsoft.VisualStudio.ProjectSystem.Designers.PhysicalProjectTreeProvider.GenerateOriginalTree(ConfiguredProjectExports configuredProjectExports, CancellationToken cancellationToken)
   at Microsoft.VisualStudio.ProjectSystem.Designers.PhysicalProjectTreeProvider.<GenerateOriginalTreeAsync>d__117.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.VisualStudio.ProjectSystem.ProjectTreeProviderBase.TreeUpdateSubmission.<UpdateTree>d__25.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd(Task task)
   at Microsoft.VisualStudio.ProjectSystem.ProjectTreeProviderBase.<>c__DisplayClass95_0.<<Initialize>b__1>d.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.VisualStudio.ProjectSystem.ProjectTreeProviderBase.<>c__DisplayClass102_0.<<SubmitTreeUpdateAsync>b__0>d.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.VisualStudio.ProjectSystem.ProjectTreeProviderBase.<>c__DisplayClass114_0.<<SubmitTreeUpdateHelperAsync>b__0>d.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.VisualStudio.ProjectSystem.ProjectTreeProviderBase.<>c__DisplayClass102_0.<<SubmitTreeUpdateAsync>b__0>d.MoveNext()<---

===================

@ulbhudda thanks for the feedback. For Visual Studio 2017 issues we recommend using the "Send Feedback" button at the upper-right corner of the VS2017 window. This will automatically send other critical information, such as build numbers, logs, etc.

@ulbhudda I'm not sure which version of VS2017 RC you're on - its requirements for project templates have changed from one build to the next. generator-aspnetcore-spa version 0.8.0 (to be published today) produces projects that have been confirmed to work with the latest VS2017 RC build 26127.


Move to @types

Hi @donnut. Wanted to open this up for feedback from you, but would be interested in moving this repo into @types with the rest of the projects? I'd love to help out on this definition where possible and I'm happy to add you to that organisation, if you'd like (with or without moving this repo).

I can't speak for @donnut, but I'm under the impression he's become less active here. I'm currently actively using Ramda with Angular 2, so I have a vested interest in helping out to maintain these type definitions. I've tried to improve on the existing typings and merged all commits across the network in as well. If possible, I'd be interested in helping out with a repo at @types as well.

By the way, a related discussion popped up at the main repo, about the idea of merging typings into the main repo. How would you view this consideration of placing type definitions with @types vs. with Ramda's main repo @blakeembrey?

How would you view this consideration of placing type definitions with @types vs. with Ramda's main repo @blakeembrey?

The best place for type definitions is always with the repo - it enables us TypeScript users to use it immediately without needing to do anything else.
I'll try to help out on the other issues when I get a chance, but I can't currently think of a good solution. I like the generic approach also (at least until variadic kinds land) but it has a few side effects - just need to wait for variadic kinds.

Thanks for the input. Looking forward to that. :)

With everyone's preference so far seeming to go toward a merge into the main ramda repo, I'm inclined to think this can be closed unless that plan were to fail somehow. If so we can reopen again. :)

We're currently worrying about getting constrained in versioning in case of a merge with Ramda (I think we might appreciate the freedoms of a faster publishing cycle), so your proposal might still remain relevant.
One question having the repo in @types would raise for me though would be w.r.t. where users should file their typing-related issues, especially since for the purpose of github's linking of issues to commits/PRs afaik it'd be desirable to have typing issues in the same repo as the typings code itself.
Or would the @types sub-repo be constructed as a mirror of the current repo? I'm not very knowledgeable of best practices there, so I'd glad to see your take there.

We'd just add whoever can move the repo to the @types repo and they can move the repo into @types. Redirects would work through GitHub. You can browse through @types repos to see, but it's maintained just like here - just it's in an org where dozens of others can also pick up on maintenance if needed.

Thanks. I think my own concerns are addressed.

There was one compatibility-breaking feature request I'd suggested to relegate to a branch (see #113). To my understanding from the Types guidelines it'd be possible to have that survive DefinitelyTyped for end-user consumption if using a branch / folder, right?

Sure, a branch works. Whatever makes it easier for you to maintain, I've been doing a little bit of branching when releasing a new major version to be able to update bugs in previous major versions, though I don't find that to be an issue often.
In terms of DefinitelyTyped, we're currently having to manually make PRs to it (if you're maintaining a copy there) until https://github.com/Microsoft/types-publisher/issues/4 lands (we're all stuck waiting for that sadly).

Alright, cool. Wouldn't be the first addition on my wishlist, so oh well. :)

@blakeembrey: could you perhaps send @donnut an invite as well? I fear the issue lists are all in the current repo, which I imagine only he would the ability to move over.

@blakeembrey: hey, just pinging again in the event you'd missed this earlier; if there are any complications feel free to bring them up.

@tycho01 Sorry, I had sent the invite to @donnut when you asked about it 😄 I just double checked again now.

Guess it's in his hands now then, thanks again! :)

Few things we wanted to confirm:

if people still have/use the old repo link, that'd get redirected, right?
would such redirects still work despite the subsequent rename to npm-ramda?

Yes to 1 and 2, it's worked in the past without issue.

Still waiting for Erwin to perform the move, but I just had an unrelated question pop up I wouldn't know well where else to ask.
I know how we were testing now, and felt some concern about it, but now found that the situation for Lodash at DefinitelyTyped appeared no different. From what I can see, this way of testing now helps test for cases where typings are improperly strict, but not for cases where the typings are improperly vague. Is this just me, or is that just the current state of TS definition testing?

@tycho01 I may have misinterpreted, but it sounds like you're asking about testing runtime vs definition time? If so, you may be able to find up some old Typings threads on this, but from mine and @types perspective we've always tested both the runtime and compile time using something like ts-node and tsc with noEmit enabled. You can see it https://github.com/types/npm-bcrypt/blob/35f8721dbf2072bc65f1495f58905aaba2158d9b/package.json#L9. We also have a few of repos that have been created or moved into Typings that don't follow this pattern, but in general it's what I'd recommend. There's some basic guidelines I added a little while back here: https://github.com/types/guidelines.
If that wasn't what you were asking, let me know 😄 I believe DefinitelyTyped has always just tested compile time using tsc.

Hm. If TS infers a function to return any rather than number, can we make that a failing test?

I think it'd be easy enough to write a little script for it. Just run tsc for x.pass.ts and x.fail.ts and make sure the error codes are correct each execution.

Interesting approach :), I hadn't quite thought of that. Thanks!

Move the repo, as you noticed ;)
@blakeembrey, can you rename it to npm-ramda?

@donnut Done! 👍

@blakeembrey: you mentioned PRs to DefinitelyTyped to publish. That seems a little different from the PRs I'm familiar with in the sense this would only be part of their repository. Might you have any reference on how to do this?

@blakeembrey: you mentioned PRs to DefinitelyTyped to publish. That seems a little different from the PRs I'm familiar with in the sense this would only be part of their repository. Might you have any reference on how to do this?

@tycho01 They have an automated script watching DefinitelyTyped to re-publish packages on changes. See https://github.com/Microsoft/types-publisher/issues/4 for information where we're trying to get redirects supported.

@tycho01 They have an automated script watching DefinitelyTyped to re-publish packages on changes. See https://github.com/Microsoft/types-publisher/issues/4 for information where we're trying to get redirects supported.

Okay. Until then, I suppose I'm okay even without being able to get it updated -- still a pretty big TS issue severely hampering usefulness of the Ramda typings anyway.


Visualization for Class Shift

Hi authors,
Thanks for your amazing work!
Could you please tell me how to generate the visualisation plot of domain shift (the Fig.3 in paper)？If possible, could you please provide any code snippets for this part?
Thank you so much.

Hello, thank you for your interest in our work. Unfortunately, I did not save that part of the code in the GitHub repository because it serves as auxiliary drawing functionality, so it is no longer accessible. However, I will explain how the image was obtained:

First, during the test-time adaptation process, we saved the features of each class from the source domain and the target domain.
Next, we performed t-SNE dimensionality reduction on these features (it is worth noting that, for fairness in comparison, the features from all methods were reduced together).
Finally, we used the reduced features to create the plot, where classes are represented by different colors, domains are represented by different opacities, and the shift direction of classes from the source domain to the target domain is indicated by arrows (with the starting and ending points of the arrows being the prototypes).


Dan stop survey

Fixes #22

Dan, I have a comment. please check.

Hi Mash -
I made that update.  Can you merge my pull request ?

Dan, I have to carefully review this request since I moved the logic of the survey start and end to "home.page.ts."

Thanks, Dan, for helping us with this. I merged the code. I used an icon instead of text because the iOS app title is in the middle and the survey paused text is too long.

Thanks, Dan, for helping us with this. I merged the code. I used an icon instead of text because the iOS app title is in the middle and the survey paused text is too long.

Thanks, Dan, for helping us with this. I merged the code. I used an icon instead of text because the iOS app title is in the middle and the survey paused text is too long.


Invalid IP in tweetfeed.intel

This IP has an invalid second octet:
https://github.com/CriticalPathSecurity/Zeek-Intelligence-Feeds/blob/d92c74c44d3d86d2e2b524cfb12f7e4445c21b7a/tweetfeed.intel#L1305
Thanks!

Thank you for bringing this to our attention - we are looking into it.

It looks like this one was removed and readded: https://github.com/CriticalPathSecurity/Zeek-Intelligence-Feeds/blob/master/tweetfeed.intel#L1305


recode polarity to int

Hello,
You provide the drop_polarity argument to read_bruker_sql but do not use it.  The code says:
        frames = pd.DataFrame(
            {
                col: pd.to_numeric(
                    frames[col]
                ) for col in frames if col != "Polarity"
            }
        )

There is probably an if drop_polarity: missing.
https://github.com/MannLabs/alphatims/blob/master/alphatims/bruker.py#L249
I understand the motivation for keeping only numeric types.  Personally, I would prefer the polarity was never dropped.

there is no place to infer polarity from.  I wish it was in the global metadata but it's not.
how about keeping polarity but recoding it into -1 and +1?  I tried opening a pull request but had trouble with pushing my commit here.

frames['Polarity'] = frames['Polarity'].apply(lambda x: int(x+'1')) then all your dtypes are numeric.

Dear Alexander,
Thanks for looking into this. You are right that this is not properly implemented. It now is available on the development branch. I have also made the option available to trigger this directly through the alphatims.bruker.TimsTOF constructor. Even though your solution is more elegant, I have not made it the default to maintain backward compatability. This might change in the future

This is in master branch by now. If a problem remains, feel free to open up a new issue.


pfs_middleware: Add PROXYFS method

Only accessible to swift owners. Disable with bypass_mode = off.
Lets REST clients make arbitrary RPCs against proxyfsd. Provides some degree of validation before making said request, including separate whitelisted RPC methods for read-only vs. read-write.
Closes #245.

I'll create a branch of my branch to see how this works so far...

Thanks Tim - this is perfect!
I've cherry-picked your squashed commit (already had the rpc.py fix) onto my pfsagentd branch... so you can delete this PR at your preference.
Marching forward!