fix: allow mount and work directories to be reset for session environments

Closes #580.
/deploy #notest

You can access the deployment of this PR at https://renku-ci-ds-581.dev.renku.ch

Pull Request Test Coverage Report for Build<PHONE_NUMBER>3
Details

13 of 13 (100.0%)  changed or added relevant lines in 4 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.05%) to 86.609%

Totals

Change from base Build<PHONE_NUMBER>6:
0.05%

Covered Lines:
15147

Relevant Lines:
17489

💛  - Coveralls

Tearing down the temporary RenkuLab deplyoment for this PR.


Removed possibly unneeded anys

Just trying to make sense of the code... I don't think these anys were needed, right?

I had it that way originally but I wasn't positive that covered all cases since you know it can be almost anything. It's probably fine.


Fix uint32 uid issue #195

Fix to make it work properly with uint32 uid/gid.  #195

Thanks, can you please signoff your commit, see: https://github.com/NVIDIA/enroot/blob/master/CONTRIBUTING.md


[6.2] Fix to #162 - problem with OFFSET and FETCH when the order is by a column that has one value

Problem affects some queries using paging that use ambiguous ordering. Fix is to introduce ORDER BY row_number() to remove the ambiguity.
New method is still able to take advantage of indexes, so there shouldn't be a significant impact on performance.

@anpete @divega

new version up

@divega new version up

new version up

Fixed in 8caee28305de907a23f766586e4a358299c3633c


Can't figure out how to rotate around coordinates, and there is some error in docs

I need to rotate this image around the center of the circle with known coordinates

[x,y,angle]
[398, 290, -2.4995608216061647]

img.rotate(angle * 180 / Math::PI, idx: x, idy: y, odx: x, ody: y)

but it looks wrong, the position has shifted

how do I do it without shifting the resulting circle?
Also the https://www.libvips.org/API/current/libvips-resample.html#vips-rotate doc has the ody arg twice.
vips-8.11.3-Wed Aug 11 09:29:27 UTC 2021
Vips::VERSION "2.1.4"

After playing around I feel like rotation shifts the image, i.e. you don't know the odx/ody ahead, because it all shifts.

Hi @Nakilon,

Also the https://www.libvips.org/API/current/libvips-resample.html#vips-rotate doc has the ody arg twice.

Oops! Thanks, I patched it.
I'll make you a rotate example, I have some code somewhere.

Sorry, just to be clear, you'd like an image the same width and height as the input, and with the circle in the same position, but the circle should be rotated so the leaf points roughly upwards, is that right?

Here's a thing that does ^^^ my guess.
#!/usr/bin/ruby

require 'vips'

x, y, angle = 398, 290, -2.4995608216061647

image = Vips::Image.new_from_file ARGV[0]

# add an alpha so we can see the image edges
image = image.add_alpha

# the [[a, b], [c, d]] affine transform we want (simple rotate)
a = Math.cos(angle)
b = -Math.sin(angle)
c = -b
d = a

# point (x, y) in the input goes to this coordinate in the output
x_after = a * x + b * y
y_after = c * x + d * y

# therefore to keep (x, y) in the same place, we need to move the output area
# by the difference
dx = x_after - x
dy = y_after - y

image = image.affine [a, b, c, d], oarea: [dx, dy, image.width, image.height]

image.write_to_file ARGV[1]

I see:
$ ./naklion.rb ~/pics/naklion.png x2.png

To make:

You don't need the alpha, but it's an easy way to see where the image edges are.

... perhaps rotate should have an oarea parameter. It would make this a little simpler.

Yes, you nuderstood right. Thank you. I predicted it would need to calculate these sinuses by yourself. And yes, it's very inconvinient. As a user of this method I don't expect the rotation to change the size of image, because it's kind of unpredictable.
After have no luck with it I ended up with just pixel-by-pixel projecting by myself ..(
Vips::Image.bandjoin( img.bandsplit.map do |band|
  array = band.to_a
  Vips::Image.new_from_array( array.map.with_index do |row, i|
    row.map.with_index do |c, j|
      (inner+outer)/2 < Math.hypot(x-j, y-i) ? c : ((
        ii = i - y
        jj = j - x
        array[jj * Math::sin(angle) + ii * Math::cos(angle) + y]\
             [jj * Math::cos(angle) - ii * Math::sin(angle) + x]
      ))
    end
  end ).cast :uchar
end )

otherwise I would need kind of to reverse engineer this transformation method.

The goal was to transform this

to this

i.e. visualise the work of my captcha solver.


Use Clean-Session from Connection Options

The Option clean_session is already implemented, but always set to true.
This PR adds 2 lines to be able to set clean_session as false with connection_options.
Unfortunately I can't run tests with Elixir 1.10, because the QuickCheck library can't be downloaded (is fixed in eqc, but not released yet, see https://github.com/Quviq/eqc_ex/commit/1e8367293a06de050bbceffc53ac2aca7696dae7) and a further problem in eqc_ex.

Pull Request Test Coverage Report for Build 1

0 of 0   changed or added relevant lines in 0 files are covered.
1 unchanged line in 1 file lost coverage.
Overall coverage decreased (-0.2%) to 87.888%

Files with Coverage Reduction
New Missed Lines
%

lib/tortoise/transport/ssl.ex
1
53.13%

Totals

Change from base Build 53:
-0.2%

Covered Lines:
566

Relevant Lines:
644

💛  - Coveralls


KubeVirt: Conflict with Secondary Disk naming

Secondary Disk for kubevirt VM has a naming pattern like secondarydisk0, secondarydisk1.
After scaling the Machine deployment, all the VMs will try to create secondary disks with the same naming pattern resulting in a conflict and some VMs doesn't work.

this issue will be closed once the fix lands in KKP 2.21


Install binary files to /usr/lib/ instead of /usr/share/

This was already addressed on the debian side with https://github.com/unindented/electron-installer-debian/pull/47 and for some reason, the change didn't happen on the redhat installer

@unindented is there a chance you could review this PR for merging?

I've added @malept and you @fcastilloec as collaborators to this repo too, in case you want to port over fixes that were made in electron-installer-debian. Thank you for your help!

Thank you for adding us @unindented


Add API to configure variants for libraries extension sources

This commit fixes a hole in the implementation: for dependencies
issued from a dependency catalog there was no easy way to depend
on the platform variant, the test fixtures variant, or an artifact
notation (classifier or artifact type).

@bot-gradle test this

OK, I've already triggered ReadyForMerge build for you.

Merging to keep history of this.


Removed extra block copying in InlineWorker

Based on #8989 ,
This PR checks if removing the secondary deep-copying for IR in InlineWorker fails any known tests in our test suite.

Just checking in here @esc and @kc611 - I see this has been marked as abandoned. Isn't this an easy win for compilation performance? Or has it been superseded by other planned inlining improvements?

Putting this into the 0.59 milestone - this PR is considered a bit safer for that release as the object mode fallback pipeline will be removed in that release, and this deep copy may have made some operations in that mode safe. (even though CI passes for this at present)

Noting also that this looks like it will be good to merge once the object mode fallback has been removed.

Outcome of maintainer discussion is here: https://github.com/numba/numba/issues/8989#issuecomment-1715519353 and noted by @gmarkall here https://github.com/numba/numba/pull/8990#issuecomment-1669775041, essentially, the tests continue to pass and the concerns about mutation of IR and object-mode fallback will be mitigated by removal of this behaviour in 0.59 anyway. This PR should be ok as-is.

The issue raised in https://github.com/numba/numba/issues/5824 is not a concern anymore? Would love to see compilation time improve, but Numba IR is mutable and optimization passes may change nodes. Making the IR immutable would require time to update all the optimization code.

The issue raised in #5824 is not a concern anymore?

Can you be more specific here? I'm not sure I follow.

Would love to see compilation time improve, but Numba IR is mutable and optimization passes may change nodes. Making the IR immutable would require time to update all the optimization code.

Can you provide an example of code that needs updating?

The concern is also with external code that uses Numba as a compiler toolkit and adds transformation/optimization passes, not just code inside the Numba code base. Unfortunately, this issue is too hard to reproduce with a small reproducer easily and needs full optimization passes to demonstrate.
Even inside Numba codebase, there are a lot of IR mutations (e.g. here). Unit tests may not be comprehensive enough to detect issues that require specific interactions of transformations.

@ehsantn In my understanding, this PR is not making Numba IR immutable. It is removing a redundant deep copy that discards / replaces something already copied by a prior deep copy:

The problem (perhaps a bug, although I may have missed some subtlety) is that the first deepcopy (line 375) is followed by immediately discarding the contents of the body (line 376) and then repopulating it with additional deep copies (lines 377-379). It is this second set of copies that I am struggling to explain - surely those elements would already have been copied in the original deepcopy call?

(from @JSKenyon's description in #8989)

Unfortunately, this issue is too hard to reproduce with a small reproducer easily and needs full optimization passes to demonstrate.

For the purpose of demonstrating that this PR breaks something, I think showing a full optimization pass that breaks under the application of this PR would be an appropriate starting point.

Following discussion in the public dev meeting: this will be marked RTM for now and merged, on the basis that it can easily be reverted if it proves to be an issue.
@ehsantn Following the merge, please do open an issue with a reproducer (large or small, as a starting point) if this turns out to be problematic.

Thanks for following up @gmarkall. The fact that this PR is just removing redundant copies makes sense. The comment about waiting for removal of object mode fallback was confusing to me since implied that the copy isn't redundant.
Block class doesn't have an explicit __deepcopy__ method but I just checked CPython source code and manually verified that it does the right thing (attributes are deepcopied properly). I think merging this should be fine. I'll follow up if there were issues.

Thank you to everyone who contributed to this - looking forward to testing it out.


[0.5.5] Chrome doesn't allow inner components to be styled and stops the propagation of events outside the custom element

Hello!
I'm attempting creating a paper-button able to trigger a form's submit event. My first attempt was to create a custom element extending "button", but that disabled the ripple somehow on Firefox.
I then came up with the idea of placing the paper-button and a hidden standard button (with type="submit"), so that on the click event of the paper-button procs the button's click and thus the outer form's submission.
Also I've created a style which applies to all the paper-button with class 'blue' (see the code below).
All these things work as expected on Firefox, but on Chrome the button's click event is ignored by the outer form and the paper-button.blue style is ignored.
Style, referenced in a standard CSS file inside the HTML page:
paper-button.blue {
  color: #FFFFFF;
  background-color: #2196F3; }

paper-submit polymer element:
<link href="../polymer/polymer.html" rel="import">
<link href="../paper-button/paper-button.html" rel="import">

<link href="../polymer/polymer.html" rel="import">
<link href="../paper-button/paper-button.html" rel="import">

<polymer-element name="paper-submit" attributes="bClass raised recenteringTouch fill" role="button">
    <template>
        <style>
            #submit-button {
                display: none;
            }
        </style>
        <paper-button id="button" on-click="{{click_submit}}" class="{{bClass}}" raised="{{raised}}" recenteringTouch="{{recenteringTouch}}" role="button">
            <content></content>
        </paper-button>

        <button type="submit" id="submit-button"></button>
    </template>
    <script>
        Polymer({
            publish: {
                bClass: '',
                raised: false,
                recenteringTouch: false,
                fill: true
            },

            click_submit: function () {
                var submit = this.$['submit-button'];
                submit.click();
            }
        });
    </script>
</polymer-element>

How to reproduce: create a simple form with some required fields, then click on the paper-submit DOM element, defined as follows:
<paper-submit bClass="blue" role="button" tabindex="0">Click me</paper-submit>

Note: the color works if you create a paper-button element directly in the body:
<paper-button class="blue" role="button">I work</paper-button>

Thanks :)

As for the style problem, I was unaware of the /deep/ selector. Using it, Chrome styles the button correctly.
Now, because of this behavior I suspect it's the web components Chrome's management to isolate the component and its events from the outside. I tried using the following code, but it will then bypass the HTML5's validation:
    function getParentForm(el) {
        var parent = el.parentNode,
            tag = parent.tagName.toLowerCase();
        if (tag === 'form') {
            return parent;
        }
        if (tag === 'body') {
            return null;
        }

        return getParentForm(parent);
    }
    Polymer({
        publish: {
            bClass: '',
            raised: false,
            recenteringTouch: false,
            fill: true
        },

        click_submit: function () {
            var form = getParentForm(this);

            if (form) {
                form.submit();
            }
        }
    });

Ok, I came with a workaround, hoping this will be fixed (?) as soon as possible. The main concept is to find the closest form, inject a submit button, click on it and eventually remove it from the DOM. This allows HTML5 validation to trigger and everything seems to be OK.
    function getParentForm(el) {
        var parent = el.parentNode,
            tag = parent.tagName.toLowerCase();
        if (tag === 'form') {
            return parent;
        }
        if (tag === 'body') {
            return null;
        }

        return getParentForm(parent);
    }
    Polymer({
        publish: {
            bClass: '',
            raised: false,
            recenteringTouch: false,
            fill: true
        },

        click_submit: function () {
            var form = getParentForm(this);
            if (form) {
                var button = document.createElement("button");
                button.setAttribute("type", "submit");
                form.appendChild(button);
                button.click();
                form.removeChild(button);
            }
        }
    });

FYI, I've created a paper-submit webcomponent, you can install it via bower (paper-submit). This is the link on GitHub: https://github.com/elegos/paper-submit

Closing this issue due to age and the release of version 1 of Polymer - please feel free to re-open if this is incorrect.


[SPARK-31131][SQL] Remove the unnecessary config spark.sql.legacy.timeParser.enabled

What changes were proposed in this pull request?

spark.sql.legacy.timeParser.enabled should be removed from SQLConf and the migration guide
spark.sql.legacy.timeParsePolicy is the right one
Why are the changes needed?

fix doc
Does this PR introduce any user-facing change?

no
How was this patch tested?

Pass the jenkins

cc @cloud-fan @dongjoon-hyun @maropu thanks

Test build #119712 has started for PR 27889 at commit 1bc237a.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/24441/
Test PASSed.

thanks @dongjoon-hyun

Test build #119714 has started for PR 27889 at commit 0fc7d98.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/24443/
Test PASSed.

Merged build finished. Test PASSed.

Test build #119712 has finished for PR 27889 at commit 1bc237a.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/119712/
Test PASSed.

Test build #119714 has finished for PR 27889 at commit 0fc7d98.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/119714/
Test PASSed.

Thank you all. Merged to master/3.0.


Vision for MinGHC

@snoyberg said in #74:

I clearly consider MinGHC+cabal-install an inferior solution (as I am biased), since I think stack > cabal-install. The question then becomes: what does MinGHC offer over plain stack? As I see it:

Easier installation procedure
Includes the big downloads (GHC and msys) in the initial download, which is very useful if you're going to install the toolchain on multiple systems

The advantage of downloading plain stack is:

Quicker initial install
Doesn't require any registry changes
Will grab the best version of GHC for you, instead of whatever one happens to be available

Those are my thoughts, what does everyone else think?

I agree. My only thought is that stack is less geared for tinkering and more geared for building projects. MinGHC has the advantage that you have raw access to GHC and GHCi on your PATH without needed to know much (if anything) about the ecosystem. stack sort of forces you to deal with the ecosystem (in a good way, to be sure), but it might be a big bite to chew for newcomers.

Now that I think about it, however, the Haskell Platform also targets that audience well, so perhaps MinGHC has been deprecated. stack is even more minimal than MinGHC is!

With a really easy installation procedure for stack on Windows, I think stack could be a slam dunk. (Right now you have to unzip an archive, rename a file to stack.exe, and move it to you PATH. I think we can do a tad better than that.)

There is value to providing an environment where Cabal works, just because all tutorials and beginner documentation references cabal and not stack. The fact that MinGHC ships alex and happy is clearly a workaround for the fact Cabal is not that good, so certainly if we defaulted to stack it would be a bit more minimal.
@snoyberg, can stack download a complete MinGHC environment? e.g. MSYS, Git, and even Cabal? Assuming it can, the two things MinGHC brings to the table are:

You can download it on one machine and install it on another. That's valuable, although a lot less than it was 5 years ago.
You can install it with a double click. There are plenty of Windows users who will mess up unzipping.
You can add it to the PATH, which again, is pretty difficult for some users (and not really trivial for any, thanks to the awful UI).

My guess is that MinGHC should stay roughly as it is, but also bundle stack (does it not do that already?). Hopefully at some point in the future it will become clearer if stack wins and it can then be pared back.

Yes, stack downloads essentially the exact same thing that MinGHC installs. I based the stack setup command for Windows on what we found worked for MinGHC.

I generally agree with @ndmitchell's sentiments. With no intended offense to the Haskell Platform folk, I think MinGHC is a better place for beginners to start since it's lets users more easily avoid "cabal hell" and comes bundled with some very nice tools (hopefully stack included).
Still, I expect that stack will soon have its own installer (or a PowerShell script that installs it) and there won't be a clear winner in that regard.

So it sounds like the consensus is probably to keep MinGHC as is, and to create a separate Stack-only installer, which is basically the MinGHC installer including just the Stack tool? And expect that in the fullness of time one of those will probably die.

I hadn't thought of that idea. One potential [ly bad] idea is:

Install stack on the PATH
Run stack setup for some version of GHC (maybe have a checkbox in the installer?)
Add stack's managed GHC's to the PATH

Around the same time this conversation got started, I visited Mark about how stack and the Haskell Platform relate. I think that that's a conversation that's quite relevant to the future of MinGHC. In theory: as the HP becomes more minimal, it may be able to replace MinGHC as the "minimal GHC installer for Windows."
Relevant mailing list post: http://projects.haskell.org/pipermail/haskell-platform/2015-July/003129.html

That sounds exactly like MinGHC is trying to provide - are there any differences? If so, can we just rebrand MinGHC, tweak as required, and go from there? Perhaps with @3noch as a blessed Platform contributor (my input recently has been increasingly minimal, so I see this as a @snoyberg + @3noch project where I have opinions but no real right to an "official say" anymore).

shrug I guess it depends on how the discussion on the mailing list goes. I see no problem with that.

I'm usually of the opinion that "the more the merrier" but however it pans out I am committed enough to making this work that I'll be making contributions on a small scale. I am trying hard to bring Haskell into my company and contributing to the "on-boarding" experience falls in line with that goal. I am limited, however, to about 4-6 hours a week on things like this so you can imagine I won't be contributing anything of significant size. I have zero opinions about what we call this or who does the work. All I care about is a good product and a good experience.

Resolved by #87, closing.


PackedScene.instance() is slow with no way to make it interactive

Godot version:
v3.2.3.stable.official
OS/device including version:
OS: Solus x86_64 (Kernel 5.6.19-159.current)
CPU: Intel i5-7400
GPU: NVIDIA GeForce GTX 1050
Backend: GLES3
Issue description:
I am creating a chunk loader. Calling scene.instance() is slow and causes a noticeable lagging even for simple scenes.
I think the best solution would be the possibility to split instancing over multiple frames. PackedScene could have a
method instance_interactive() that works in a similar way as ResourceLoader.load_interactive().
I also tried instancing the scene in a thread but ran into issue #36793.
Steps to reproduce:
Instance a scene that contains a few primitives and materials, for example with this code:
var scene := preload('res://Test.tscn')

func _input(event: InputEvent) -> void:
    if event.is_action_pressed('ui_cancel'):
        var start_instancing := OS.get_system_time_msecs()
        var node := scene.instance()
        prints('Time for instancing:', OS.get_system_time_msecs() - start_instancing)

        var start_adding := OS.get_system_time_msecs()
        add_child(node)
        prints('Time for adding child node:', OS.get_system_time_msecs() - start_adding)

Pressing ui_cancel causes a small lag the first time the scene is instanced, but not for subsequent calls.
Minimal reproduction project:
Run the attached project and move around with WASD. Press Escape (or any other ui_cancel action) to instance a scene while moving to notice the lag.
Check the debug output to see the time it took to instance the scene. On my computer it takes 40ms to instance the scene located at ./wip/chunks/Complex.tscn.
Project: bug.zip

This should be discussed in a feature proposal, not a bug report :slightly_smiling_face:


case handling analyze function with single actions

case handling on calling analyze function with single actions such as actions=("emotion").

thank you for contribution

thank you for creating such powerful library ^^


Giraph on GraphScope implementation

What do these changes do?
A follow up for these two PRs. Mainly remove apache giraph classes in our giraph-on-grape SDK.
https://github.com/alibaba/GraphScope/pull/1362
https://github.com/alibaba/GraphScope/pull/1385

Related issue number

Fixes

Please "squash & rebase" and void merge otherwise the diff is so HARD to read.

Codecov Report

Merging #1386 (ef23eff) into main (91f4248) will increase coverage by 0.18%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##             main    #1386      +/-   ##
==========================================
+ Coverage   73.56%   73.75%   +0.18%
==========================================
  Files          88       88
  Lines        9610     9660      +50
==========================================
+ Hits         7070     7125      +55
+ Misses       2540     2535       -5

Impacted Files
Coverage Δ

python/graphscope/client/rpc.py
85.71% <ø> (-0.58%)
:arrow_down:

python/graphscope/client/session.py
74.81% <ø> (+0.09%)
:arrow_up:

python/graphscope/framework/app.py
89.75% <ø> (-0.20%)
:arrow_down:

python/graphscope/framework/graph_builder.py
88.23% <ø> (ø)

python/graphscope/framework/graph_utils.py
82.53% <ø> (+2.05%)
:arrow_up:

python/graphscope/tests/unittest/test_java_app.py
100.00% <ø> (ø)

... and 4 more

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 91f4248...ef23eff. Read the comment docs.


:enhancement: the website using google automated tool.

Description of the enhancement
I will enhance the performance of the website by using the google automated tool lighthouse audit.
I will take the report and try to increase the web performance of the app.
Screenshots
Screenshots of the proposed changes compared with the current version of the project

I think according to the report this has to be improved a lot.


New router API.

The new API is very similar to ReactRouter, so if you are familiar with ReactRouter you already know how most of this works.
location and setup
The router exposes a location module. Wire it to your app's state and actions so we can map a subset of window.location.
const actions = app({
  state: {
    location: location.state
  },
  view,
  actions: {
    location: location.actions
  }
})

const unsubscribe = location.subscribe(actions.location)

location.subscribe
Subscribe to popstate and pushstate (this one doesn't really exist, so we need to create it behind the scenes).
const unsubscribe = location.subscribe(actions.location)

unsubscribe
Call unsubscribe to remove event listeners and undo our custom pushstate event.
unsubscribe()

Route
<Route path="/my-path" render={({ match, location }) =>
Hello
} />

match
location

The location state.

location.pathname

Same as window.location.pathname.

location.previous

The previous location.pathname. Useful when redirecting back to the referrer url/pathname after leaving a guarded/protected route.

match.url

The matched part of the url. Use to assemble links inside routes. See Link.

match.path

The route path. Same as path.

match.isExact

Indicates whether the given path matched the url exactly or not. I am still debating whether we need this or not.

Link
<Link to="/hello">Hello Page</Link>
<Link to="/public">Public Page</Link>
<Link to="/private">Private Page</Link>

Switch
<Switch>
  <Route path="/" render={Home} />
  <Route path="/will-match" render={WillMatch} />
  <Route render={NoMatch} />
</Switch>

Redirect
<Route
  path="/protected"
  view={() => (isLoggedIn ? <Protected /> : <Redirect to="/login" />)}
/>

Examples
Basic
const homeView = () =>

Home

const aboutView = () =>

About

const topicView = ({ match }) => {
  return (

        You are reading: {match.params.topicId}

Subtopics

          <Link to={`${match.url}/red`}>Red</Link>

          <Link to={`${match.url}/blue`}>Blue</Link>

      <Route path={`${match.path}/red`} render={() =>
RED
} />
      <Route path={`${match.path}/blue`} render={() =>
BLUE
} />

  )
}

const topicsView = ({ match }) => {
  return (

Topics

          <Link to={`${match.url}/one`}>Hyperapp Topic One</Link>

          <Link to={`${match.url}/two`}>Hyperapp Topic Two</Link>

          <Link to={`${match.url}/three`}>Hyperapp Topic Three</Link>

      {match.isExact &&
Please select a topic.
}

      <Route parent path={`${match.path}/:topicId`} render={topicView} />

  )
}

const view = state =>

        <Link to="/">Home</Link>

        <Link to="/about">About</Link>

        <Link to="/topics">Topics</Link>

    <Route path="/" render={homeView} />
    <Route path="/about" render={aboutView} />
    <Route parent path="/topics" render={topicsView} />

Url Params

const view = state =>

Accounts

        <Link to="/netflix">Netflix</Link>

        <Link to="/zillow-group">Zillow Group</Link>

        <Link to="/yahoo">Yahoo</Link>

        <Link to="/modus-create">Modus Create</Link>

    <Route
      path="/:id"
      render={({ match }) =>

            ID: {match.params.id}

}
    />

Redirects (Auth)

const fakeAuth = {
  isAuthenticated: false,
  authenticate(cb) {
    fakeAuth.isAuthenticated = true
    setTimeout(cb, 2000) // fake async
  },
  signout(cb) {
    fakeAuth.isAuthenticated = false
    setTimeout(cb, 2000)
  }
}

const AuthButton = ({ go, isLoggedIn, userId, login }) =>
  isLoggedIn
    ?

        Welcome {userId}!
        <button
          onclick={() => {
            fakeAuth.signout(() => {
              go("/")
              login(null)
            })
          }}
        >
          Sign out
        </button>

    :
You are not logged in.

const Public = () =>
Public

const Protected = () =>
Protected

const Login = ({ from, login, redirectToReferrer }) => props => {
  if (redirectToReferrer) {
    return <Redirect to={from} />
  }

  return (

        You must log in to view the page at {from}

      <button
        onclick={() => {
          fakeAuth.authenticate(() => login("Admin"))
        }}
      >
        Log in
      </button>

  )
}

const AuthExample = ({
  location: { go, previous },
  login,
  userId,
  isLoggedIn,
  data
}) => {
  return (

      <AuthButton
        go={go}
        login={login}
        userId={userId}
        isLoggedIn={isLoggedIn}
      />

          <Link to="/public">Public Page</Link>

          <Link to="/protected">Protected Page</Link>

      <Route path="/public" render={Public} />

      <Route
        path="/protected"
        render={() => (isLoggedIn ? <Protected /> : <Redirect to="/login" />)}
      />

      <Route
        path="/login"
        render={Login({
          login,
          redirectToReferrer: isLoggedIn,
          from: previous
        })}
      />

  )
}

const view = state => actions =>
  <AuthExample
    location={{
      go: actions.location.go,
      previous: state.location.previous
    }}
    login={actions.auth.login}
    userId={state.auth.userId}
    isLoggedIn={state.auth.userId !== null}
  />

Recursive
const PEEPS = [
  { id: 0, name: "Michelle", friends: [1, 2, 3] },
  { id: 1, name: "Sean", friends: [0, 3] },
  { id: 2, name: "Kim", friends: [0, 1, 3] },
  { id: 3, name: "David", friends: [1, 2] }
]

const find = id => PEEPS.find(p => p.id == id)

const view = state =>
  <Person
    match={{
      url: "",
      params: { id: 0 }
    }}
  />

const Person = ({ match }) => {
  const person = find(match.params.id)

  return (

        {person.name}’s Friends

        {person.friends.map(id =>

            <Link to={`${match.url}/${id}`}>
              {find(id).name}
            </Link>

        )}

      <Route parent path={`${match.url}/:id`} render={Person} />

  )
}

No Match (404)
const NoMatchExample = () =>

        <Link to="/">Home</Link>

        <Link to="/old-match">Old Match, to be redirected</Link>

        <Link to="/will-match">Will Match</Link>

        <Link to="/will-not-match">Will Not Match</Link>

        <Link to="/also/will/not/match">Also Will Not Match</Link>

    <Switch>
      <Route path="/" render={Home} />
      <Route
        path="/old-match"
        render={() => <Redirect from="/old-match" to="/will-match" />}
      />
      <Route path="/will-match" render={WillMatch} />
      <Route render={NoMatch} />
    </Switch>

const view = state => <NoMatchExample />

const Home = () =>

    A <Switch> renders the first child <Route>{" "}
    that matches. A <Route> with no path always
    matches.

const WillMatch = () =>
Matched!

const NoMatch = ({ location }) =>

      No match for {location.pathname}

@JorgeBucaran I thought we were using Navigation instead of Switch for that component.

@okwolf The Switch component mentioned on that thread refers to a different component, and the one in this PR is more like the Switch component in ReactRouter.

@JorgeBucaran The Switch component mentioned on that thread refers to a different component, and the one in this PR is more like the Switch component in ReactRouter.

I just looked at the docs for <Switch> from react-router and now I see where the name came from. I still think the name is poorly-chosen and ambiguous, but if it's familiar to users of react-router then I'll keep my virtual mouth shut on the subject 😐

@okwolf Do you have a better name than Switch?

@JorgeBucaran Do you have a better name than Switch?

I really wish I did, but I don't.
Building elegant software is so easy compared to naming things... 😒

@JorgeBucaran It seems that <Link> ignores all properties except to and location so there is no way to set attributes (such as class) to underlying  node. I think it isn't intended behavior.

@yuku-t Good catch, thanks! 👍

Now you can set any attribute of the , but maybe it would be better to decide what attributes of the hyperlink we would want to set, e.g.,id, class, etc.

Hey @JorgeBucaran, first of all, I am coming from the Angular world, and just starting to understand React/Redux, etc.  I am just playing around with Hyperapp and I must say, this is gonna be (if not is) the next big thing, what an awesome project and community. Thanks!
My problem is, I'm trying to use the new router here (with Hyperapp's v0.16.0) by pointing to this branch. And I'm having trouble "reloading" the app. It only reloads (and renders the view) after another action was triggered. Could you explain a bit more on how to configure the new location module of the router at the start of this thread? I think I may have missed something there.
Looking forward to understanding all of Hyperapp!

@1zaak Thanks for the kind words. Here is a simple (but full code) example.
import { h, app } from "hyperapp"
import { Link, Route, location } from "@hyperapp/router"

const actions = app({
  state: {
    auth: { userId: null },
    location: location.state
  },

  view: state =>

Accounts

          <Link to="/netflix">Netflix</Link>

          <Link to="/zillow-group">Zillow Group</Link>

          <Link to="/yahoo">Yahoo</Link>

          <Link to="/modus-create">Modus Create</Link>

      <Route
        path="/:id"
        view={({ match }) =>

 console.log("OK")}>

              ID: {match.params.id}

}
      />
    ,

  actions: {
    auth: {
      login: userId => ({ userId })
    },
    location: location.actions
  }
})

const unsubscribe = location.subscribe(actions.location)

Of course, the router is still not published, but if you managed to import the router from this branch, then the above should run without any trouble.

@JorgeBucaran It's still not working. Even after I copy the whole thing.

@1zaak Well surely it's a problem with how you are importing from this branch or with the hyperapp build you are using because as you can see from the Gif, it is actually working. (hyperapp v0.16.2)
You'll need to give me a few more details if you want me to help (and I'll try to do what I can).

Ah, I was using v0.16.0. It works after i upgraded hyperapp tov0.16.2. Thanks a lot @JorgeBucaran

@JorgeBucaran What is your recommended way to fetch data for routes in this new router API?

@SkaterDad What about using oncreate on the component that will be rendered?
<Route route="/" view={Hello} />

const Hello = props => (
   { fetch }}

)

What else did you have in mind?

@JorgeBucaran What about using oncreate on the component that will be rendered?

I suppose that would work for many use cases, so long as key is used thoughtfully.  It is a clean solution to preventing extra fetches on re-render, and you could change the key if your data needs re-fetching.
In that case, changing the key to fetch fresh data, would all of the children nodes get wiped out and rendered from scratch?  Could be a perf hit when all you really need is to update data of the same shape.

@SkaterDad

In that case, changing the key to fetch fresh data, would all of the children nodes get wiped out and rendered from scratch?

If the data has the same shape and so has the UI tree, then nodes will not be wiped out and rendered from scratch. Otherwise, you can key the children, so that they are only moved around.
Does that make sense?

I encountered an issue when using Switch. The way I implement before I added routes was like so:
export const UsersRow = ({row}) => {
    return

        {row.map(({id, name, age})=>{
        return (

            <UserCard id={id} name={name} age={age}/>

)
        })}

}

export const Users = ({user}) => {
    let rows = chunk(users, 4)
    return rows.map(row=>{
        return <UsersRow row={row}/>
    })
}

And rendering in view.
<Products products={state.products}/>

But when I added routes.
<Switch>
    <Route path="/users" render={Products({products: state.products})} />
      <Route>...redacted...
</Switch>

And changed the signature of the Users view component to add props:
export const Users = ({user}) => props => {
    let rows = chunk(users, 4)
    return rows.map(row=>{
        return <UsersRow row={row}/>
    })
}

It renders correctly except for the UsersRow which fails to render. Am i missing something here?

@1zaak Switch renders the first child, that's it! Switch is unique in that it renders a route exclusively. So, maybe you were using Switch, but didn't have to?

That's what I thought, but I think I tested it without Switch and still the same thing happened. But let me try again, maybe I did something wrong. Thanks for confirming the right behavior @JorgeBucaran

@1zaak Let me know how that goes! Remember that every Route that matches the location renders inclusively, but if inside a Switch, only the first will be matched. It should work similarly as ReactRouter's Switch component. Also make sure you didn't miss the 404 example using Switch above on my post (it's the last of the examples). 💪

This works for me (without Switch)
<Route path="/users" render={()=>{
            return isAuthenticated() && <Users products={state.users}/>
}} />

Thanks @JorgeBucaran


joytk relay Command doesnt work

The Relay function from the joytk is not working for me. as seen in the Error message  below

The Monitor and The Ringcon Commands are perfectly working.
My OS is Ubuntu 20.04. Have you an Idea why it isnt working?

Okay After i replaced the Mac-Adress on Line 136 in the connect_switch function with the Mac adress from my Switch i get following Error Message something is still not quite correct

Hum, yes, it will work better without my Mac address XD. I also need to implement the pairing as in the python script, currently it only works if the switch is already paired.
Could you try to find why it overflows, with gdb for example?

While I implement it, does https://github.com/Yamakaky/joy/tree/master/trace#how-to-capture work on your side?

Yes the python script works on my side

Do you have a core dump? If you use systemd, coredumpctl gdb should open it.

i post a core dump maybe today evening or tomorrow evening. if i find time to do it


Not found dll

System: Win10
Release: https://github.com/icsm-au/DynAdjust/releases/tag/v1.0.3
Type:
adjust

Dll not found:

mkl_tbb_thread.dll
msvcp110.dll
msvcr110.dll
tbb.dll

These libraries are third party libraries shipped by Microsoft and Intel.

mkl_tbb_thread.dll and tbb.dll are shipped as part of Intel's Math Kernel Library (MKL) and Threaded Building Blocks (TBB). See https://software.seek.intel.com/performance-libraries for accessing these run time binaries.

msvcp110.dll and msvcr110.dll are shipped as part of the Microsoft Visual C++ Redistributable for Visual Studio 2015, 2017 and 2019. Visit https://support.microsoft.com/en-us/help/2977003/the-latest-supported-visual-c-downloads or https://visualstudio.microsoft.com/downloads/ > Other Tools and Frameworks > Microsoft Visual C++ Redistributable for Visual Studio 2019 to access the correct version for your system (32-bit or 64-bit).

Hi @rogerfraser .
Good. Maybe you should add this to the "Windows build requirements"? Or somewhere nearby?

Thanks @zvezdochiot.  Good idea - the need to download these resources is mentioned in the DynAdjust compilation in Windows PDF in the resources folder, but only the context of compiling.  I suppose what is needed are some instructions for runtime execution for those not able or wanting to compile.

README.md has been updated with these suggestions.  Thank you @zvezdochiot.


[NTR]

Preferred term label: Methylmalonic aciduria and/or homocystinuria, cblD type
Synonyms
Definition (free text, please give PubMed ID, if applicable, in format PMID:#######)
Methylmalonic aciduria and/or homocystinuria, cblD type is an autosomal recessive inborn disorder of cobalamin metabolism caused by biallelic variants in MMADHC. Depending on the type and location of variants in MMADHC, patients may present with methylmalonic aciduria, homocystinuria, or both. MMADHC has been reported to result in the cblD complementation group of cobalamin disorders.
Parent term (use OLS, or your favorite ontology browser)
inborn disorder of cobalamin metabolism and transport (MONDO:0019220)
Children terms (if applicable) Should any existing terms that should be moved underneath this new proposed term?
methylcobalamin deficiency type cblDv1 (MONDO:0017683)
Methylmalonic aciduria and homocystinuria, cblD type (MONDO:0010185)
vitamin B12-responsive methylmalonic acidemia, type cblDv2 (MONDO:0017685)
Your nano-attribution (ORCID)
0000-0002-5655-9589
If you don't have an ORCID, you can sign up for one here

Please note that the above request was discussed by the ClinGen Aminoacidopathy Gene Curation Expert Panel. All three disorders that are now requested to be child terms have the same MIM# in OMIM - (MIM#277410) which supported lumping these three conditions together for the purposes of gene curation. Thank you for your help!


Update get-started-visualize-power-bi.md

I could not follow along with the tutorial without this extra step.

@tempacct791 - I made an update that adds this very step just yesterday!
https://github.com/MicrosoftDocs/azure-docs-pr/pull/292092/files
It should be live by the end of the day. Thanks!

#please-close


Use int64 rather than int for public integers

There was a recent thread opened by someone who was surprised that randint failed with a "cannot parse as integer" exception. It turned out they were using a 32-bit version of Elvish. A 64-bit version of Elvish handled the situation. It seems to me that Elvish should uniformly use int64 in its public APIs (e.g., the randint command) where that is possible. That an int64 may be slower than an int on 32-bit platforms is less important than consistent behavior by Elvish on platforms with different native integer width.
The specific example was this: randint<PHONE_NUMBER>00<PHONE_NUMBER>000000. But there are plenty of other builtins that use int where int64 is preferable. Maximal speed on 32-bit platforms is less important than consistent behavior on platforms with 32 and 64 bit word length.

I've been chipping away at a change to resolve this issue. It is proving to be quite intrusive. Consider something like the implementation of the count command:
func count(fm *Frame, args ...any) (int, error) {
        var n int
        switch nargs := len(args); nargs {
        case 0:
                // Count inputs.
                fm.IterateInputs(func(any) {
                        n++
                })
        case 1:
                // Get length of argument.
                v := args[0]
                if len := vals.Len(v); len >= 0 {
                        n = len
                } else {
                        err := vals.Iterate(v, func(any) bool {
                                n++
                                return true
                        })
                        if err != nil {
                                return 0, fmt.Errorf("cannot get length of a %s", vals.Kind(v))
                        }
                }
        default:
                // The error matches what would be returned if the `Inputs` API was
                // used. See GoFn.Call().
                return 0, errs.ArityMismatch{What: "arguments", ValidLow: 0, ValidHigh: 1, Actual: nargs}
        }
        return n, nil
}

All functions of this sort need to be changed to use an explicit int64 type for the return value.
Note that unit tests which do something like That("num 1").Puts(1) are easy enough to handle by having the unit test framework handle the conversion so that the .Puts(1) doesn't have to be written as .Puts(int64(1)) since num 1 now produces a int64 rather than a int type. But that enhancement to the unit test framework only handles some of the int/int64 type differences as exhibited by the count implementation above.

My main concern is not whether this change should be done. The external behavior of Elvish on 32 and 64 bit platforms should be identical. The question is how to minimize the size of the necessary changes, possibly by breaking them up over several commits.

The user @0323pin on the DM channels asked:

Even though ... I don't know for how long 32bit systems will remain relevant but, that's for another discussion.

To which I replied:

They're likely to be relevant for a long time. For the same reasons even older 8/16 bit word length systems are still somewhat relevant. Obviously that diminished relevance doesn't require Elvish to support those systems, but Elvish should support 32 bit systems for the foreseeable future. In particular I think Elvish should exhibit the same behavior on 32 and 64 bits systems to the extent possible. This isn't entirely possible given the Go language specification. Consider that the maximum length of a slice/array is constrained by the range of the native int type. So Elvish is going to have a lower limit on the length of a list on 32 bit platforms. Which affects the behavior of the Elvish count command. Nonetheless, it should be possible for Elvish to otherwise treat numbers in the range of 64 bit ints the same on platforms with a 32 bit word length. Which affects commands like randint and %.

Note that this works on 64 bit platforms but not 32 bit platforms:
elvish> % (math:pow 2 31) 3
▶ (num 2)

But not 32 bit platforms:
elvish> % (math:pow 2 31) 3
Exception: wrong type for arg #0: must be integer
[tty 14]:1:1: % (math:pow 2 31) 3

I can't see a good reason why the modulo command should behave differently based on whether the platform uses 32 or 64 bit integers.

Ideally, the use of int shouldn't matter for Elvish. Go functions that take int as an argument can be divided into two classes:

Where INT_MAX is a genuine upper bound on the argument. For this class it makes sense to retain the machine-dependent INT_MAX as an upper bound in the Elvish binding.
An example of that is str:replace's &max option: because the size of a string can't exceed INT_MAX, specifying a &max option that exceeds INT_MAX makes no sense either.

Where it's an accidental limitation of the Go function's implementation. For this class the ideal solution is to extend the domain to accept big.Int as well.
The examples of randint and % both fall into this class. Both these functions can be extended to accept big ints fairly straightforwardly since big.Int provides .Rand and .Rem that can be used to implement them respectively.

Now, it's possible that it's much easier to extend some functions in class 2 to accept int64 than it is to extend them to accept big.Int - maybe Go's stdlib provides implementations for int64 but not big.Int. But unless there are a lot of those examples (and there is currently none), I am reluctant to change the internal representation of integers. Defaulting to int is a pretty strong convention in Go and going against this default can create some headache.

I am reluctant to change the internal representation of integers. Defaulting to int is a pretty strong convention in Go and going against this default can create some headache.

Indeed, that is the source of much of the difficulty I've encountered in trying to switch from int to int64 for any num that can be represented by int64 on 32-bit platforms. It appears that special-casing commands that operate on integers, such as randint, to also handle big.Int is going to be simpler than replacing int with int64 as the base integer for the num type. Too, that approach is also more flexible by providing a larger range than int64 for commands where restricting the range to int64 isn't necessary.
I tabled working on my original approach a couple of months ago. In the hope that revisiting the code after putting it on the shelf for a few weeks would yield insights on how to simplify the change. But that seems unlikely after taking another look at my work-in-progress.

Now, it's possible that it's much easier to extend some functions in class 2 to accept int64 than it is to extend them to accept big.Int

My current work-in-progress surfaced only a handful of cases where that is true. It looks like it is easier to modify those cases to explicitly convert big.Int to int64, if the value is in the int64 range and otherwise raise an error, than it is to have those cases take an int64 argument and have the Elvish runtime do the conversion.


update github action versions for nodejs deprecation warning

Linked issue(s)
[Build and publish documentation](https://github.com/kolenaIO/kolena/actions/runs/7807623172/job/21296350784)
Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20: actions/checkout@v3, actions/setup-python@v4, aws-actions/configure-aws-credentials@v2, <EMAIL_ADDRESS>For more information see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.

What change does this PR introduce and why?
Please check if the PR fulfills these requirements

[ ] Include reference to internal ticket and/or GitHub issue "Fixes #NNNN" (if applicable)
[ ] Relevant tests for the changes have been added
[ ] Relevant docs have been added / updated

Will merge this tomorrow


Support/live 5782 add cosmos staking flow playwright tests

📝 Description
Cosmos banners
❓ Context

Impacted projects:  LLD

Linked resource(s):  https://ledgerhq.atlassian.net/browse/LIVE-5782

✅ Checklist

[ ] Test coverage
[ ] Atomic delivery
[ ] No breaking changes

📸 Demo

🚀 Expectations to reach
Please make sure you follow these Important Steps.
Pull Requests must pass the CI and be internally validated in order to be merged.

/generate-screenshots

/generate-screenshots

/generate-screenshots

/generate-screenshots

/generate-screenshots

/generate-screenshots

I think you need to /generate-screenshots as there's only MacOS screenshots. Also I would include some test steps to test the banner and buttons in the account page, since currently there's only portfolio page tests

/generate-screenshots

@hzheng-ledger @hedi-edelbloute FYI :slightly_smiling_face:


Added a feature to remove keys on reload

Behind a feature toggle. Removes keys in the same way that the keymanager does, to ensure that the signer can't be referenced once the key has been removed.
Previously the HUP signal was purely additive, so you couldn't actually remove keys without a restart.
Made a script that allows removal of keys, so that i can add, reload, remove, reload with that interop folder.
Offers a solution to #7503
Documentation

[X] I thought about documentation and added the doc-change-required label to this PR if updates are required.

Changelog

[X] I thought about adding a changelog entry, and added one if I deemed necessary.

I broke this fairly easily, closing for now, will have to re-evaluate.


Cucumber Tests: Allow conflict-free parallel execution

As developer / tester,
I want to be able to execute Cucumber tests in parallel,
so that there are no conflicts between executions started by multiple persons or branches (and to be able to enable parallel execution for lower time comsumption).
Hints / Details

Acceptance Criteria

Parallel execution of tests possible without conflicts
Solution does not decrease readability of the tests (if we cannot find a solution that fulfills this it might be better to leave the tests as they are)

Out of Scope

...

relates to #518, #519


Access Key Works in editor but not in IOS build

Everything works great in the editor, including video and photo recording. BUT when I build a mobile IOS device I get the following errors:
"InvalidOperationExeption: NatCorder session token invalid. Check your NatML access key and plan"
"InvalidOperationExeption:  NatDevice session token invalid. Check your NatML access key and plan"
"InvalidOperationExeption:  NatDevice session token invalid. Check your NatML access key and plan"
I've been trouble shooting this bug for two days now any idea is welcome!

Hey there @Benjamin-Rhodes-Kropf , we're working on revamping this system. In the mean time, can you share the full logs from Xcode in a .txt attachment? There should be a preceding error that mentions why the session token is invalid.

Hey,
Same issue I found
"InvalidOperationExeption: NatCorder session token invalid. Check your NatML access key and plan"
"InvalidOperationExeption: NatDevice session token invalid. Check your NatML access key and plan"
"InvalidOperationExeption: NatDevice session token invalid. Check your NatML access key and plan"
I review the Xcode
there is missing ai.natml-natml framework

https://docs.google.com/document/d/1BfK6rbig598Xohham3xjaNsMoOhhrl7et-02k58OTMo/edit
This is the log kindly review

Hey @Aditya-Solulab , thanks for sharing your logs. Are you embedding your Unity app in another iOS app? I'll also follow up over email because I'll need potentially sensitive information to proceed on this.

I rebuilt my code and changed my Unity version,
which seemed to work. However, I am now having problems with accessing the
camera and audio (it takes 3-4 seconds every time). Is that normal?

@Benjamin-Rhodes-Kropf this doesn't sound normal. I recommend opening a new issue with more info. Also by "it takes 3-4 seconds", do you mean it takes that long to start the camera? And what OS/device does this happen on?

This is on iOS. Yes I mean it takes this long to start the camera. I will
submit a problem.
On Thu, Jun 29, 2023 at 11:49 AM Yusuf Olokoba @.***>
wrote:

I rebuilt my code and changed my Unity version,
which seemed to work. However, I am now having problems with accessing the
camera and audio (it takes 3-4 seconds every time). Is that normal?
@Benjamin-Rhodes-Kropf https://github.com/Benjamin-Rhodes-Kropf this
doesn't sound normal. I recommend opening a new issue with more info. Also
by "it takes 3-4 seconds", do you mean it takes that long to start the
camera? And what OS/device does this happen on?
—
Reply to this email directly, view it on GitHub
https://github.com/natmlx/videokit/issues/34#issuecomment-1613444452,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AUJCD2XZYMZP7NYR2QIQWBTXNWPYFANCNFSM6AAAAAAYOEDHWY
.
You are receiving this because you were mentioned.Message ID:
@.***>

Hi yusuf,
No currently I am not embedding the Unity app into another app. I am using
unity 2021.3.4f1 its give me
am using NATML Video kit
Everything works great in the editor, including video and photo recording.
BUT when I build a mobile IOS device I get the following errors:
"InvalidOperationExeption: NatCorder session token invalid. Check your
NatML access key and plan"
"InvalidOperationExeption: NatDevice session token invalid. Check your
NatML access key and plan"
"InvalidOperationExeption: NatDevice session token invalid. Check your
NatML access key and plan"
I've been having trouble shooting this bug for two days now any idea is
welcome!
I am review the Issue on git there also no answer
https://github.com/natmlx/videokit/issues/34
I am attaching the logs
kindly review the logs
https://docs.google.com/document/d/1BfK6rbig598Xohham3xjaNsMoOhhrl7et-02k58OTMo/edit
Any help is really appreciated.
Thanks in advance
On Thu, Jun 29, 2023 at 9:17 PM Yusuf Olokoba @.***>
wrote:

Hey @Aditya-Solulab https://github.com/Aditya-Solulab , thanks for
sharing your logs. Are you embedding your Unity app in another iOS app?
I'll also follow up over email because I'll need potentially sensitive
information to proceed on this.
—
Reply to this email directly, view it on GitHub
https://github.com/natmlx/videokit/issues/34#issuecomment-1613442483,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/BAHTVNMF6HBRSKWS5QV675DXNWPSRANCNFSM6AAAAAAYOEDHWY
.
You are receiving this because you were mentioned.Message ID:
@.***>

Hey @Aditya-Solulab , can you try the 0.0.14-alpha.1 pre-release build? We've reimplemented how access keys are implemented, so this issue should no longer happen.

HI Natmlx/Videokit,
I tried new  0.0.14-alpha.1
https://www.npmjs.com/package/ai.natml.videokit  version.
but I got media assets is null in the editor on StopVideoRecording
Thanks
On Tue, Jul 4, 2023 at 3:33 AM Yusuf Olokoba @.***>
wrote:

Hey @Aditya-Solulab https://github.com/Aditya-Solulab , can you try the
0.0.14-alpha.1 https://www.npmjs.com/package/ai.natml.videokit
pre-release build? We've reimplemented how access keys are implemented, so
this issue should no longer happen.
—
Reply to this email directly, view it on GitHub
https://github.com/natmlx/videokit/issues/34#issuecomment-1619194422,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/BAHTVNIK2FJHIWT2VUJUTQDXOM6R5ANCNFSM6AAAAAAYOEDHWY
.
You are receiving this because you were mentioned.Message ID:
@.***>

Hi
I tried new version   0.0.14-alpha.1
https://www.npmjs.com/package/ai.natml.videokit  version.
In editor works the session key(access key)
but in IOS Device
valid. Check your NatML access key.
at VideoKit.Internal.VideoKit.CheckStatus
(VideoKit.Internal.VideoKit+Status status) [0x00000] in
<00000000000000000000000000000000>:0
at VideoKit.VideoKitRecorder.PrepareEncoder () [0x00000] in
<00000000000000000000000000000000>:0
at
System.Runtime.CompilerServices.AsyncTaskMethodBuilder.Start[TStateMachine]
(TStateMachine& stateMachine) [0x00000] in
<00000000000000000000000000000000>:0
at VideoKit.VideoKitRecorder.PrepareEncoder () [0x00000] in
<00000000000000000000000000000000>:0
at VideoKit.VideoKitRecorder.Awake () [0x00000] in
<00000000000000000000000000000000>:0
at
System.Runtime.CompilerServices.AsyncVoidMethodBuilder.Start[TStateMachine]
(TStateMachine& stateMachine) [0x00000] in
<00000000000000000000000000000000>:0
at VideoKit.VideoKitRecorder.Awake () [0x00000] in
<00000000000000000000000000000000>:0
--- End of stack trace from previous location where exception was thrown ---
at VideoKit.VideoKitRecorder.Awake () [0x00000] in
<00000000000000000000000000000000>:0
at
System.Runtime.CompilerServices.AsyncVoidMethodBuilder.Start[TStateMachine]
(TStateMachine& stateMachine) [0x00000] in
<00000000000000000000000000000000>:0
at VideoKit.VideoKitRecorder.Awake () [0x00000] in
<00000000000000000000000000000000>:0
--- End of stack trace from previous location where exception was thrown ---
at
System.Runtime.CompilerServices.AsyncMethodBuilderCore+<>c.b__7_0
(System.Object state) [0x00000] in <00000000000000000000000000000000>:0
at UnityEngine.UnitySynchronizationContext+WorkRequest.Invoke ()
[0x00000] in <00000000000000000000000000000000>:0
at UnityEngine.UnitySynchronizationContext.Exec () [0x00000] in
<00000000000000000000000000000000>:0
2023-07-04 17:28:06.399054+0530 xrnode[2486:925131] UnityARKit: Updating
ARSession configuration with <ARWorldTrackingConfiguration: 0x2839e1400
worldAlignment=Gravity lightEstimation=Enabled frameSemantics=None
videoFormat=<ARVideoFormat: 0x282624be0 imageResolution=(1920, 1440)
pixelFormat=(420f) framesPerSecond=(60)
captureDeviceType=AVCaptureDeviceTypeBuiltInWideAngleCamera
captureDevicePosition=(1)> autoFocus=Enabled environmentTexturing=None
wantsHDREnvironmentTextures=Enabled planeDetection=Horizontal
collaboration=Disabled userFaceTracking=Disabled sceneReconstruction=None
appClipCodeTracking=Disabled>
2023-07-04 17:28:06.410703+0530 xrnode[2486:925131] UnityARKit: Updating
ARSession configuration with <ARWorldTrackingConfiguration: 0x2839e3800
worldAlignment=Gravity lightEstimation=Enabled frameSemantics=None
videoFormat=<ARVideoFormat: 0x282624be0 imageResolution=(1920, 1440)
pixelFormat=(420f) framesPerSecond=(60)
captureDeviceType=AVCaptureDeviceTypeBuiltInWideAngleCamera
captureDevicePosition=(1)> autoFocus=Enabled environmentTexturing=None
wantsHDREnvironmentTextures=Enabled planeDetection=Horizontal
collaboration=Disabled userFaceTracking=Disabled sceneReconstruction=None
appClipCodeTracking=Disabled>
InvalidOperationException: VideoKit session token is invalid. Check your
NatML access key.
at VideoKit.Internal.VideoKit.CheckStatus
(VideoKit.Internal.VideoKit+Status status) [0x00000] in
<00000000000000000000000000000000>:0
at VideoKit.Recorders.MP4Recorder.Create (System.Int32 width,
System.Int32 height, System.Single frameRate, System.Int32 sampleRate,
System.Int32 channelCount, System.Int32 videoBitRate, System.Int32
keyframeInterval, System.Int32 audioBitRate) [0x00000] in
<00000000000000000000000000000000>:0
at VideoKit.VideoKitRecorder.CreateRecorder (System.Int32 width,
System.Int32 height, System.Int32 sampleRate, System.Int32 channelCount)
[0x00000] in <00000000000000000000000000000000>:0
at VideoKit.VideoKitRecorder.StartRecording () [0x00000] in
<00000000000000000000000000000000>:0
at
System.Runtime.CompilerServices.AsyncVoidMethodBuilder.Start[TStateMachine]
(TStateMachine& stateMachine) [0x00000] in
<00000000000000000000000000000000>:0
at VideoKit.VideoKitRecorder.StartRecording () [0x00000] in
<00000000000000000000000000000000>:0
at XRStudio.Scipts.UI.UIController.OnVideoRecordButtonDown () [0x00000]
in <00000000000000000000000000000000>:0
at UnityEngine.Events.UnityEvent.Invoke () [0x00000] in
<00000000000000000000000000000000>:0
at XRStudio.Scipts.UI.VideoRecordButton+d__18.MoveNext ()
[0x00000] in <00000000000000000000000000000000>:0
at UnityEngine.SetupCoroutine.InvokeMoveNext
(System.Collections.IEnumerator enumerator, System.IntPtr
returnValueAddress) [0x00000] in <00000000000000000000000000000000>:0
--- End of stack trace from previous location where exception was thrown ---
at
System.Runtime.CompilerServices.AsyncMethodBuilderCore+<>c.b__7_0
(System.Object state) [0x00000] in <00000000000000000000000000000000>:0
at UnityEngine.UnitySynchronizationContext+WorkRequest.Invoke ()
[0x00000] in <00000000000000000000000000000000>:0
at UnityEngine.UnitySynchronizationContext.Exec () [0x00000] in
<00000000000000000000000000000000>:0
throw this error
On Tue, Jul 4, 2023 at 5:27 PM Aditya Rajput @.***> wrote:

HI Natmlx/Videokit,
I tried new  0.0.14-alpha.1
https://www.npmjs.com/package/ai.natml.videokit  version.
but I got media assets is null in the editor on StopVideoRecording
Thanks
On Tue, Jul 4, 2023 at 3:33 AM Yusuf Olokoba @.***>
wrote:

Hey @Aditya-Solulab https://github.com/Aditya-Solulab , can you try
the 0.0.14-alpha.1 https://www.npmjs.com/package/ai.natml.videokit
pre-release build? We've reimplemented how access keys are implemented, so
this issue should no longer happen.
—
Reply to this email directly, view it on GitHub
https://github.com/natmlx/videokit/issues/34#issuecomment-1619194422,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/BAHTVNIK2FJHIWT2VUJUTQDXOM6R5ANCNFSM6AAAAAAYOEDHWY
.
You are receiving this because you were mentioned.Message ID:
@.***>

Hey @Aditya-Solulab can you share the full logs from Xcode in a .txt attachment? The logs you shared are truncated.

Hey Natmlx/Videokit,
I reset up my Unity Its works now
On Wed, Jul 5, 2023 at 5:41 PM Yusuf Olokoba @.***>
wrote:

Hey @Aditya-Solulab https://github.com/Aditya-Solulab can you share the
full logs from Xcode in a .txt attachment? The logs you shared are
truncated.
—
Reply to this email directly, view it on GitHub
https://github.com/natmlx/videokit/issues/34#issuecomment-1621633396,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/BAHTVNN2IYSUSTZDIVAFKJLXOVKXJANCNFSM6AAAAAAYOEDHWY
.
You are receiving this because you were mentioned.Message ID:
@.***>

@Aditya-Solulab sounds good. I'll keep this issue open until we publish the 0.0.14 update. In the mean time, let me know if you face any issues.

Thanks a lot for understanding.
On Sun, Jul 9, 2023 at 6:58 PM Yusuf Olokoba @.***>
wrote:

@Aditya-Solulab https://github.com/Aditya-Solulab sounds good. I'll
keep this issue open until we publish the 0.0.14 update. In the mean time,
let me know if you face any issues.
—
Reply to this email directly, view it on GitHub
https://github.com/natmlx/videokit/issues/34#issuecomment-1627716355,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/BAHTVNP527BVTYTI74ARFTLXPKWX7ANCNFSM6AAAAAAYOEDHWY
.
You are receiving this because you were mentioned.Message ID:
@.***>

HI
I reported a new issue.
https://github.com/natmlx/videokit/issues/41
Issue related to unity and IOS Integration
Thanks in advance
On Thu, Jul 13, 2023 at 3:57 PM Aditya Rajput @.***> wrote:

Thanks a lot for understanding.
On Sun, Jul 9, 2023 at 6:58 PM Yusuf Olokoba @.***>
wrote:

@Aditya-Solulab https://github.com/Aditya-Solulab sounds good. I'll
keep this issue open until we publish the 0.0.14 update. In the mean time,
let me know if you face any issues.
—
Reply to this email directly, view it on GitHub
https://github.com/natmlx/videokit/issues/34#issuecomment-1627716355,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/BAHTVNP527BVTYTI74ARFTLXPKWX7ANCNFSM6AAAAAAYOEDHWY
.
You are receiving this because you were mentioned.Message ID:
@.***>

Fixed in VideoKit 0.0.14.


Jumping while running does not consume jumping stamina

This was due to a logic error that meant stamina could only be depleted by a single source in a tick.
Fixed in 1.3.5, which was just published to CurseForge and Modrinth.


add a concept of 'prophecy-dependent functions'

This is pretty minimal, but it should be enough that Andrea's mutable-references can plug right into it.

The key idea is to distinguish functions that are "prophecy dependent" vs "prophecy independent". The vast majority of functions will be prophecy independent. An example of a prophecy-dependent function would be getting the future value of a prophecy variable or the future value of a mutable reference.
In this PR, we are very restrictive on where prophecy-dependence can be used. Right now, prophecy dependence can only be used:

in spec functions marked #[prophetic]
in asserts, requires, ensures, invariants (places where it's very obvious that values cannot "escape")

However, we can add more smarts later. For example, we should be able to call proof functions with prophecy-dependent arguments as long as it doesn't mutate any tracked state and we treat any of its outputs as prophecy-dependent.
It's important that users won't have to worry about prophecy rules when they aren't making use of them. Luckily, this system is all nice and parametric, so functions like spec fn identity<T>(t: T) -> T { t } are prophecy-independent like you expect, even if T is instantiated as &mut S or Prophecy<S>. One way to think about this is to represent prophecy values as functions over the future-state. In this framework, prophecy-dependent functions take an implicit parameter representing the future-state, whereas prophecy-independent ones don't. So you can pass parametrically pass around these parameterized values as long as you don't instantiate them.

Thanks for the reminder!
I kind of wanted to let it stew on my brain to see if I still thought it's a good idea a couple weeks later. I didn't realize how much time already passed 😅


chore: update directory for gradle in dependabot

Description:
This PR updates the dependabot config to handle the updated gradle setup
Related issue(s):
Fixes #
Notes for reviewer:

Checklist

[ ] Documented (Code comments, README, etc.)
[ ] Tested (unit, integration, etc.)

Hey @jjohannes @rbarkerSL,
This change was made because after https://github.com/hashgraph/hedera-sdk-java/pull/1732 I see that dependabot doesn’t open new PRs for sdk dependencies specifically, as it did before.
Can you please help reviewing this PR? 🙏🏻

I think we also need to keep in mind this: https://github.com/hashgraph/hedera-sdk-java/pull/1911#pullrequestreview-2191407324


/r and /tell result in kick for 1.13 clients

What is the output link of /viaversion dump?
https://dump.viaversion.com/7e97386146898ee044d7018aecd4bbc95010d044d9ad6008e0fbe80c2d35f38d
Are you using any additional software like BungeeCord? If so, what software and version? (Please list your plugins as well)
Paper Spigot 1.12.2
How does this error happen? login? Using an item?
/r and /tell result in kick for spam for 1.13 clients, but /msg works.
Is there an error in the console? Use pastebin.com. Is there a kick message?
kicked for spam

Duplicate of #891


GetFeatureNames returns Configuration Keys instead of feature names

Hi,
I'm currently playing with the app-configuration service and I think I found a pretty strange bug.
When I use both, configuration K/Vs and feature flagging, and filter the feature flags in a way that it doesn't return anything. GetFeatureNamesAsync all the sudden returns configuration keys.
I'm using the following configuration/setup:
.AddAzureAppConfiguration(o =>
{
    o.Connect("");

    // Example key is MV:Dashboard:Logging:Default
    // Gets keys with prefix
    o.Select("MV:Dashboard:*", "LabelA");
    o.TrimKeyPrefix("MV:Dashboard:");

    o.UseFeatureFlags(f =>
    {
        // Works if there are keys with that prefix
        // f.Select("App.Dashboard.*", "LabelA");

        f.Select("doesntexist.*", "LabelA");
    });
});

Values in Azure App Configuration:

manager.GetFeatureNamesAsync() now returns Logging as a feature name.
If I use a feature filter via Select which returns the one configured feature flag, Logging is not getting returned and only the one actual feature App.Dashboard.All.UseAwesomeFeature gets returned.
I don't think that's the expected behavior, at least I didn't find any documentation which would say so.
Thanks
Michael

This is due to the ability to define features at the root level of IConfiguration. The Microsoft.FeatureManagement library switches to this mode if no "FeatureManagement" section is found in the application's configuration. In your case, that condition is hit if you don't pull down any features.
I can see how this can be a bit confusing. Any modification to this behavior would be a breaking change, but as we prepare for an upcoming 3.x release train we may be able to look back at this and make it require an opt-in.
For now, a workaround is to add
"FeatureManagement": {}

into your appsettings.json file. This will prevent the feature management library from thinking that you want to fall back to the root for features. It will not interfere with any features retrieved from Azure App Configuration.

Ok, thanks for the explanation.


Clarification of flip command

Hi,
Just a quick check question: In your manual here (https://warrenlab.github.io/agptools/) you say that flip will reverse-complement a sequence in the scaffold to re-orient a misassembled piece.
But does it complement the sequence, or just reverse it?
Thanks,
Jenni

It reverse-complements the sequence.
On Wed, Jun 19, 2024, 2:11 PM SheepwormJM @.***> wrote:

Hi,
Just a quick check question: In your manual here (
https://warrenlab.github.io/agptools/) you say that flip will
reverse-complement a sequence in the scaffold to re-orient a misassembled
piece.
But does it complement the sequence, or just reverse it?
Thanks,
Jenni
—
Reply to this email directly, view it on GitHub
https://github.com/WarrenLab/agptools/issues/8, or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABLL5JLCHTTJMSVJEJ5IX4DZIFYQPAVCNFSM6AAAAABJR52NZWVHI2DSMVQWIX3LMV43ASLTON2WKOZSGM3DEMRQHA3TSOA
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

To reverse-complement a sequence is to both reverse and complement it
On Wed, Jun 19, 2024, 3:03 PM SheepwormJM @.***> wrote:

Thanks Edward. Why does it complement it and not just reverse the
sequence? I'm just thinking about the impact of this on reading genes.
—
Reply to this email directly, view it on GitHub
https://github.com/WarrenLab/agptools/issues/8#issuecomment-2178671527,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABLL5JLFHPX3LPN6PTLEE4LZIF6RPAVCNFSM6AAAAABJR52NZWVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCNZYGY3TCNJSG4
.
You are receiving this because you commented.Message ID:
@.***>