Transitions in between Tabs

Hi, Is there any way to have transitions such as slide or fade in between tab navigation?
Thanks

I'm able to achieve transitions in between tabs with some source mode modifications.
However this is not restoring the previous saved state.
class TabNavigator internal constructor(
internal val navigator: Navigator
) {
var current: Tab
    get() = navigator.lastItem as Tab
    set(tab) {
        lastEvent =
            if (tab.options.index >= current.options.index) StackEvent.Push else StackEvent.Pop
        navigator.replaceAll(tab)
    }

var lastEvent: StackEvent = StackEvent.Push

@Composable
fun saveableState(
    key: String,
    tab: Tab = current,
    content: @Composable () -> Unit
) {
    navigator.saveableState(key, tab, content = content)
}

}
@Composable
fun SlideTransition(
navigator: TabNavigator,
modifier: Modifier = Modifier,
orientation: SlideOrientation = SlideOrientation.Horizontal,
animationSpec: FiniteAnimationSpec = spring(
stiffness = Spring.StiffnessMediumLow,
visibilityThreshold = IntOffset.VisibilityThreshold
),
content: TabNavigatorContent = { it.current.Content() }
) {
ScreenTransition(
navigator = navigator,
modifier = modifier,
content = content,
transition = {
val (initialOffset, targetOffset) = when (navigator.lastEvent) {
StackEvent.Pop -> ({ size: Int -> -size }) to ({ size: Int -> size })
else -> ({ size: Int -> size }) to ({ size: Int -> -size })
}
        when (orientation) {
            SlideOrientation.Horizontal ->
                slideInHorizontally(animationSpec, initialOffset) togetherWith
                        slideOutHorizontally(animationSpec, targetOffset)

            SlideOrientation.Vertical ->
                slideInVertically(animationSpec, initialOffset) togetherWith
                        slideOutVertically(animationSpec, targetOffset)
        }
    }
)

}
@Composable
fun ScreenTransition(
navigator: TabNavigator,
transition: AnimatedContentTransitionScope.() -> ContentTransform,
modifier: Modifier = Modifier,
content: TabNavigatorContent = { it.current.Content() }
) {
AnimatedContent(
targetState = navigator.current,
transitionSpec = transition,
modifier = modifier
) { tab ->
navigator.saveableState("transition", tab) {
content(navigator)
}
}
}

I was able to get state-restoration working with a small modification:
@Composable
fun ScreenTransition(
    navigator: TabNavigator,
    transition: AnimatedContentTransitionScope<Tab>.() -> ContentTransform,
    modifier: Modifier = Modifier,
-    content: TabNavigatorContent = { it.current.Content() }
) {
    AnimatedContent(
        targetState = navigator.current,
        transitionSpec = transition,
        modifier = modifier
    ) { tab ->
        navigator.saveableState("transition", tab) {
-            content(navigator)
+            tab.Content()
        }
    }
}


Resolve the archive creation properly

Manual Testing done and verified.
Issue:
Archiving the files resolves the response before archive file is getting created which can cause corrputed archives.
Fix: Use file stream close call to resolve the response, which guarantees that file is closed and archive is completed

Hi @nigurr, I'm your friendly neighborhood Microsoft Pull Request Bot (You can call me MSBOT). Thanks for your contribution!

It looks like you're a Microsoft contributor (Nitin Gurram). If you're full-time, we DON'T require a Contribution License Agreement. If you are a vendor, please DO sign the electronic Contribution License Agreement. It will take 2 minutes and there's no faxing! https://cla.microsoft.com.

TTYL, MSBOT;

looks fine


add a file consisting binary search

Add a file consisting binary search in cpp

it is already been provided
in the DSA in CPP foldee>>array adt.

if you still have any doubts pls continue else the issue will be closed after 24 hrs of inactivity.


Integrated ВСD boot menu Error

Can't create system  bootloader ,changed disks increased the size of disks does not help Nothing.
Thank you.

winre.wim has been lost.


new skeleton is useful with your IK solver?

i have a new skeleton likes SMPL T-pose skeleton.
can your IK solver be used in this skeleton?
if not, how to edit it ?
can you share the ik solver code ?

i have a new skeleton likes SMPL T-pose skeleton. can your IK solver be used in this skeleton? if not, how to edit it ? can you share the ik solver code ?

how did you get the file named 'skeleton.json'?


Sonoff RF bridge multiple remotes support

First of all, thanks very much Alex for developing this integration. I can now integerate my sonoff RF bridge to HA.
The only issue is I have a few RF remote buttons (learned in eWeLink app) but only the buttons from the first one seems to work in HA. The buttons from second remote is not recognised by HA eventhough I've given them unique names. In below example, only buttons from the remote "Speaker" is recognised but not the buttons from "BedroomLight" remote.
Would be great if I can use multiple remotes in HA.
Many thanks,
William

Any buttons should work. There are not limitations.

I experienced this, too. In my case, I had a remote, then few alarms, then a remote, the more alarms.
Those alarms after the 2nd remote would not work properly. specifying the ID also wouldn't work correctly. it would listen to different alarm instead. After each restart (load always), the previously working alarm (after 2nd remote) would not work again, seemingly incorrectly pointing to other alarm.
I resolved it by removing the 2nd remote.
I can live without the 2nd remote as they aren't essential.

Please share Bridge to my ewelink account<EMAIL_ADDRESS>

Please share Bridge to my ewelink account<EMAIL_ADDRESS>
what's your country code? it says failed to share when using my country code.

Russia +7

I checked same situation. All works fine.
Please send your sonoff.json file to my mail. You can hide private data.

Sorry, doesn't work for me. Only the buttons on first remote works.
On Sun, 24 May 2020, 16:39 Alex X<EMAIL_ADDRESS>wrote:

Any buttons should work. There are not limitations.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/AlexxIT/SonoffLAN/issues/113#issuecomment-633178067,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AIBARLJEDCKXTTUWH7IKRHDRTCQIXANCNFSM4NIGMVCA
.

@AlexxIT , try this to replica problem:

Add one remote (4 buttons), pair 4 of them (remote1, button1, button2, button3, button4)
Add 6 alarms, pair all 6 (alarm1,alarm2,alarm3,alarm4,alarm5,alarm6)
Add one remote (4 buttons), pair only 1 button, let 3 buttons unpaired (remote2, button5)
Add 5 alarms, pair first 2 only and last one, leaving 3rd and 4th unpaired (alarm7, alarm8, alarm9)

If problem is replicated, alarms7, alarm8 and alarm9 will be received incorrectly, randomly with each HA restart. Using LAN mode, reload always.

All my remotes started to work all of a sudden. I have tried 3 RF sockets
and all remotes working now. I don't remember doing anything they just
started working.
Thanks.
On Sun, 31 May 2020, 02:22 tjhiwa<EMAIL_ADDRESS>wrote:

@AlexxIT https://github.com/AlexxIT , try this to replica problem:

Add one remote (4 buttons), pair 4 of them (remote1, button1,
button2, button3, button4)
Add 6 alarms, pair all 6 (alarm1,alarm2,alarm3,alarm4,alarm5,alarm6)
Add one remote (4 buttons), pair only 1 button, let 3 buttons
unpaired (remote2, button5)
Add 5 alarms, pair first 2 only and last one, leaving 3rd and 4th
unpaired (alarm7, alarm8, alarm9)

If problem is replicated, alarms7, alarm8 and alarm9 will be received
incorrectly, randomly with each HA restart. Using LAN mode, reload always.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/AlexxIT/SonoffLAN/issues/113#issuecomment-636337668,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AIBARLK5TELG5SLMQ4L3ZKLRUEJCBANCNFSM4NIGMVCA
.

@tjhiwa I'll check your situation

@tjhiwa I don't have so many RF button to lear so many buttons and alarms. Could you send sonoff.json to my email? You can hide private data.

@tjhiwa did you send sonoff.json to my mail? Maybe I missed it.

No answer. Reopen issue if the problem is still actual


Fix API Documentation for _action/order/{orderId}/document/{documentTypeName} method

1. Why is this change necessary?
Method https://shopware.stoplight.io/docs/admin-api/b3A6MTI2MjUzOTM-create-a-document-for-an-order has not valid documentation
2. What does this change do, exactly?
Just change OpenApi annotation to present request body correctly in the documentation of api
3. Describe each step to reproduce the issue or behaviour.
Just send a document create request via the API using the config nested into an array, as documented
Please check https://github.com/shopware/platform/issues/2584
4. Please link to the relevant issues (if any).
https://github.com/shopware/platform/issues/2584
5. Checklist

[ ] I have written tests and verified that they fail without my change
[ ] I have created a changelog file with all necessary information about my changes
[ ] I have written or adjusted the documentation according to my changes
[ ] This change has comments for package types, values, functions, and non-obvious lines of code
[x] I have read the contribution requirements and fulfil them.

@Christian-Rades ok I will try to update that today :) Thank you for the info.

@Christian-Rades ok updated

Hello,
thank you for creating this pull request.
I have opened an issue on our Issue Tracker for you. See the issue link: https://issues.shopware.com/issues/NEXT-22765
Please use this issue to track the state of your pull request.

Thanks for your contribution :tada:


On-the-fly generation

After @bonsairobo added the clipmap_events API, I wanted to try to get on-the-fly generation working. This is stuttery and not cleanly implemented, but it's proving the concept. This isn't ready for merging, but it's a starting point from which we can iterate. Shout up with ideas! :)
I think in practice we really need to spread the workload over multiple frames in order to avoid the big stutters when generating a lot of new chunks and downsampling them and meshing the downsampled data all in one frame. Some ideas for approaches:

Generate lod0 chunks when the lod0 chunks themselves come into clipmap range, instead of when the higher lod chunk comes into range and then having to generate a large number of lod0 chunks all at once. This may need a separate 'chunk detection' system. I tried to write one last night but it broke the generation so I rolled it back. Downsampling could still happen at the point of needing to downsample for a higher lod mesh when that lod chunk comes into range and triggers an Enter event.
Generate chunks at the lod required rather than at lod0 + downsampling. So when an Enter event is triggered at a higher lod, instead of having to generate at lod0 and then downsampling to at least that higher lod if not the root lod, just generate at that higher lod. Then when a lower lod is needed, generate at that lower lod. Maybe at some point downsampling should be done for consistency, or maybe generating at the required lod is better / sufficiently fast?
Somehow split downsampling over multiple frames. @bonsairobo has implemented support for this, downsampling between two lods, but I am not sure how to leverage it in terms of doing it between generation and the point at which a mesh is needed. I suppose if using approach 1 - generating the lod0 chunks as they come into range, one could downsample from lod0 to lod1 when all the lod0 chunks have been generated. And from lod1 to lod2 when all the lod1 chunks have been downsampled. Etc.

I feel like a combination of 1 and 3 is the sensible way to go, but 2 does seem kind of interesting. I'm just concerned that for 2, generating instead of downsampling the various lods will be a lot more expensive as I expect generation to get more complicated for more interesting worlds whereas downsampling is always the same cost.
3 is a bit complicated / feels like it could be bug prone due to having to always correctly identify when downsampling is needed and trying to avoid redoing it unnecessarily. I suppose before downsampling to a lod level chunk, one can check whether that chunk already exists in the map.
I also want to be able to set an arbitrary world height, only generate lod0 chunks within that and somehow ensure that downsampled lods are always within that slice. So if using the world extent y from before of -2 with a y shape of 4, i.e. it's between -2 and 2 lod0 chunks in y, then no mesh for any chosen lod should stretch above 2 nor below -2. I suppose the clip events would need to be filtered somehow in the level of detail system to remove / ignore ones that would produce meshes that would violate this constraint. Or maybe it's just not an interesting real-world constraint because in most cases with on the fly generation you would generate terrain that can go to any height / depth? I don't know. It's perhaps not a priority, but it would make the demo look nicer. Maybe a simpler solution would be to change the way the demo generates the terrain.

With the clip sphere change, it is now doing this:

The gaps could well be because the checks on y coordinates in level_of_detail_system are rejecting the chunks that would be generated / downsampled / meshed in those regions.

Just to reiterate our discussion on discord...
We can solve the problem of bursty generation by

allowing enter/exit events for non-active chunks
changing the condition for enter/exit events

(1) was nontrivial because you needed a way to ensure that once a chunk had entered, all of its descendants were ready to be downsampled.
Previously, a chunk would enter the clip sphere if its center crossed the boundary. Instead, I've changed it so that a chunk enters once it is entirely bounded by the clip sphere. This is better because we'll know that once a chunk has entered, all of its descendants will also have entered. This makes downsampling on enter events safe as long as you do it in event order.

The code has had to change quite a bit since this PR. Now we're relying on state bits on the chunk nodes to know which chunks are loaded. And we've nearly got infinite terrain working, just has some kinks to work out.


Future type for point of pointer

The following code snippet fails with null pointer
type A struct {
   V string `json:"a"`
}

type B struct {
  A *A `json:"b"`
}

val := B{}

http.Join(
   ø.GET("http://example/%s", &val.A.V),
...

Here is classical cases: pointer of pointer. The construct &val.A.V always points to last value but intermediate A is not initialised yet.

mkURL needs to support func() string | func() int types.

Latest version of library uses fmt.Sprintf compatible interface to config URI. This issue is not valid.


Back TestID Missing from Credential Details

Description of problem
The Back button on the Credential Details page does not have a TestID. Expecting com.ariesbifold:id/Back
I've been using the Accessibility label of "Back" but for some reason the click even on this element doesn't seem to do anything in Appium anymore. Hoping a real TestID will behave better.
Expected behavior
Steps to reproduce
Screenshots and/or log output

Environment

[ ] Occurs on Android
[x] Occurs on iOS

Build #: 1109
Android Device Model:
iOS Device Model:
Workaround
None in test automation
Severity

[ ] High
[x] Medium
[ ] Low

closing as stale


routing.solver().Cumulative() not working for IntervalVars

I made a little test for 6 interval vars using cp_model. And it work as I great!
But the same test, but for routing solver does not work! Can it be a bug or I missed something?
Below tests for both solvers:
from __future__ import print_function

from ortools.sat.python import cp_model
from datetime import datetime, timedelta

def get_time_string(x):
    if x > pow(2, 32) or x < -pow(2, 32):
        return "-1:-1"
    x = int(x)
    if x < 0:
        return datetime(1900, 1, 1, 0, 0).strftime("%H:%M")
    elif x / 60 < 24:
        return datetime(1900, 1, 1, int(x / 60), x % 60).strftime("%H:%M")
    else:
        return str(timedelta(minutes=x))[:-3]

def create_data_model():
    """Stores the data for the problem."""
    data = {}

    data['starts'] = [
        (455, 670),
        (650, 670),
        (455, 670),
        (650, 670),
        (455, 670),
        (650, 670),
    ]

    data['ends'] = [
        (455, 670),
        (650, 670),
        (455, 670),
        (650, 670),
        (455, 670),
        (650, 670),
    ]

    data['durations'] = [
        (0, 215),
        (0, 20),
        (0, 215),
        (0, 20),
        (0, 215),
        (0, 20),
    ]
    return data

def main():
    """Solve the VRP with time windows."""
    data = create_data_model()

    model = cp_model.CpModel()

    # 1 CREATE INTERVALS
    intervals = []
    starts = []
    ends = []
    durations = []
    for i in range(len(data['starts'])):
        start_interval = model.NewIntVar(data['starts'][i][0], data['starts'][i][1], 'start_%i' % i)
        end_interval = model.NewIntVar(data['ends'][i][0], data['ends'][i][1], 'end_%i' % i)
        duration_interval = model.NewIntVar(data['durations'][i][0], data['durations'][i][1], 'duration_%i' % i)
        interval = model.NewIntervalVar(start_interval, duration_interval, end_interval, 'interval_%i' % i)
        intervals.append(interval)
        starts.append(start_interval)
        ends.append(end_interval)
        durations.append(duration_interval)

    # 2 ADD SHARED RESOURCE CONSTRAINT
    model.AddCumulative(intervals, [1 for _ in intervals], 2)

    # 3 MAXIMIZE DURATIONS
    model.Maximize(sum(durations))

    solver = cp_model.CpSolver()
    solver.parameters.max_time_in_seconds = 30.0
    solver.parameters.log_search_progress = True

    status = solver.Solve(model)

    if status == cp_model.FEASIBLE or status == cp_model.OPTIMAL:
        plan_output = ""
        for i in range(len(intervals)):
            plan_output += 'Wait ({} - {}; duration: {}), \n'.format(
                get_time_string(solver.Value(starts[i])),
                get_time_string(solver.Value(ends[i])),
                get_time_string(solver.Value(durations[i])),
            )
        print(plan_output)
    else:
        print('The problem does not have an optimal solution.')

if __name__ == '__main__':
    main()

and
from __future__ import print_function
from __future__ import absolute_import
from __future__ import division
from ortools.constraint_solver import routing_enums_pb2
from ortools.constraint_solver import pywrapcp
from datetime import datetime, timedelta

def get_time_string(x):
    if x > pow(2, 32) or x < -pow(2, 32):
        return "-1:-1"
    x = int(x)
    if x < 0:
        return datetime(1900, 1, 1, 0, 0).strftime("%H:%M")
    elif x / 60 < 24:
        return datetime(1900, 1, 1, int(x / 60), x % 60).strftime("%H:%M")
    else:
        return str(timedelta(minutes=x))[:-3]

def create_data_model():
    """Stores the data for the problem."""
    data = {}
    data['time_matrix'] = [
        [ 0, 10, 15],
        [10,  0, 30],
        [15, 30,  0],
    ]
    data['num_vehicles'] = 4
    data['depot'] = 0

    data['starts'] = [
        (455, 670),
        (650, 670),
        (455, 670),
        (650, 670),
        (455, 670),
        (650, 670),
    ]
    data['ends'] = [
        (455, 670),
        (650, 670),
        (455, 670),
        (650, 670),
        (455, 670),
        (650, 670),
    ]
    data['durations'] = [
        (0, 215),
        (0, 20),
        (0, 215),
        (0, 20),
        (0, 215),
        (0, 20),
    ]
    return data

def print_solution(solution, intervals, durations):
    """Prints solution on console."""
    plan_output = ""
    for wait_interval in intervals:
        plan_output += 'Wait ({0}..{1} - {2}..{3}; duration: {4}..{5}), \n'.format(
            get_time_string(solution.StartMin(wait_interval)),
            get_time_string(solution.StartMax(wait_interval)),
            get_time_string(solution.EndMin(wait_interval)),
            get_time_string(solution.EndMax(wait_interval)),
            get_time_string(solution.DurationMin(wait_interval)),
            get_time_string(solution.DurationMax(wait_interval)),
        )
    for duration in durations:
        plan_output += 'Duration ({}: {} - {}), \n'.format(
            get_time_string(solution.Value(duration)),
            get_time_string(solution.Min(duration)),
            get_time_string(solution.Max(duration)),
        )
    print(plan_output)

def main():
    """Solve the VRP with time windows."""
    data = create_data_model()
    manager = pywrapcp.RoutingIndexManager(len(data['time_matrix']), data['num_vehicles'], data['depot'])
    routing = pywrapcp.RoutingModel(manager)

    def time_callback(from_index, to_index):
        """Returns the travel time between the two nodes."""
        # Convert from routing variable Index to time matrix NodeIndex.
        from_node = manager.IndexToNode(from_index)
        to_node = manager.IndexToNode(to_index)
        return data['time_matrix'][from_node][to_node]

    transit_callback_index = routing.RegisterTransitCallback(time_callback)
    routing.SetArcCostEvaluatorOfAllVehicles(transit_callback_index)
    time = 'Time'
    routing.AddDimension(
        transit_callback_index,
        1200,  # allow waiting time
        1200,  # maximum time per vehicle
        False,  # Don't force start cumul to zero.
        time)
    time_dimension = routing.GetDimensionOrDie(time)

    cumul_vars = []
    # TODO: I found that NextVar()>max() == 160. Why?
    for node in range(0, 160):
        if node < len(data['time_matrix']):
            index = manager.NodeToIndex(node)
            cumul_vars.append(time_dimension.CumulVar(index))
            routing.AddToAssignment(time_dimension.SlackVar(index))
            routing.AddToAssignment(time_dimension.TransitVar(index))
        else:
            cumul_vars.append(routing.solver().IntVar(0, 1200, "cumul%i" % node))

    intervals = []
    durations = []
    # 1 CREATE INTERVALS
    for i in range(len(data['starts'])):

            wait_interval = routing.solver().IntervalVar(
                0,               # start min
                1200,            # start max
                0,               # min duration
                1200,            # max duration
                0,               # end min
                1200,            # end max
                True, "wait_on_%i" % i)
            intervals.append(wait_interval)

            start_interval = routing.solver().IntVar(data['starts'][i][0], data['starts'][i][1], 'start_%i' % i)
            end_interval = routing.solver().IntVar(data['ends'][i][0], data['ends'][i][1], 'end_%i' % i)
            duration_interval = routing.solver().IntVar(data['durations'][i][0], data['durations'][i][1], 'duration_%i' % i)

            routing.solver().Add(wait_interval.StartExpr() >= start_interval)
            routing.solver().Add(wait_interval.DurationExpr() <= duration_interval)
            routing.solver().Add(wait_interval.EndExpr() <= end_interval)

            #

            wait_duration = routing.solver().IntVar(
                0,
                1200,
                "wait_duration_%i" % i
            )
            routing.solver().Add(wait_interval.DurationExpr() == wait_duration)

            durations.append(wait_duration)

            #

            routing.AddIntervalToAssignment(wait_interval)
            routing.AddToAssignment(wait_duration)

    # 2 ADD SHARED RESOURCE CONSTRAINT
    routing.solver().Add(routing.solver().Cumulative(intervals, [1 for _ in intervals], 2, 'waits'))

    # 3 MAXIMIZE DURATIONS
    slack_durations_sum = routing.solver().IntVar(
        0,
        1200,
        "wait_duration_sun"
    )
    routing.solver().Add(slack_durations_sum == routing.solver().Sum(durations))
    routing.AddVariableMaximizedByFinalizer(slack_durations_sum)

    # Add penalties for use a vehicle to minimize number of used vehicles
    routing.SetFixedCostOfAllVehicles(10000)

    search_parameters = pywrapcp.DefaultRoutingSearchParameters()
    search_parameters.first_solution_strategy = (
        routing_enums_pb2.FirstSolutionStrategy.GLOBAL_CHEAPEST_ARC)
    solution = routing.SolveWithParameters(search_parameters)
    if solution:
        print_solution(solution, intervals, durations)
    else:
        print("no solution")

if __name__ == '__main__':
    main()

And here is outputs:
cp_model solver output (not more than 2 intervals simultaneously, as I expected):
Wait (07:35 - 07:35; duration: 00:00),
Wait (10:50 - 10:50; duration: 00:00),
Wait (07:35 - 11:10; duration: 03:35),
Wait (10:50 - 11:10; duration: 00:20),
Wait (07:35 - 10:50; duration: 03:15),
Wait (10:50 - 10:50; duration: 00:00),

routing solver output (all intervals simultaneously, but I expect not more than 2):
Wait (07:35..07:35 - 11:10..11:10; duration: 03:35..03:35),
Wait (10:50..10:50 - 11:10..11:10; duration: 00:20..00:20),
Wait (07:35..07:35 - 11:10..11:10; duration: 03:35..03:35),
Wait (10:50..10:50 - 11:10..11:10; duration: 00:20..00:20),
Wait (07:35..07:35 - 11:10..11:10; duration: 03:35..03:35),
Wait (10:50..10:50 - 11:10..11:10; duration: 00:20..00:20),

So, please help. Am I missed something or it is a bug of the OR Tools?
I use:

or-tools version: 7.5.7466
language: Python
platform: Windows 10

Don't get it,
Using CP-SAT solver (in sat directory) you try to solve a scheduling probleme...
Actually, in constraint_solver you have two "stages" the first one which is the CP solver and on top of it you have the VRP Solver (using the CP solver internally).
In you secod example you try to solve it using the VRP/TSP Solver which is not really intended for this.
Also you set the number of vehicle to 4 so you can do 4 "tasks" (i.e. visiting locations) in parallel...

It is just simplified test. In real task I have more complex vrptw problem with scheduling. In my case I need to constraint SlackVars on a group of the nodes with routing.solver().Cumulative().
And both tests shows how I think I can add constraits for SlackVars(). I just make IntrevalVars that shouls match with SlackVars and constrain them using Cumulative() function.
But when I use CP-SAT solver all is work perfectly. But when I try to do same things using Routing solver - it is does not work.

This code works fine on the CP solver
def main():
"""Solve the VRP with time windows."""
data = create_data_model()
solver = pywrapcp.Solver('')

# 1 CREATE INTERVALS
intervals = []
starts = []
durations = []
for i in range(len(data['starts'])):
    interval = solver.IntervalVar(
        data['starts'][i][0], data['starts'][i][1],
        data['durations'][i][0], data['durations'][i][1],
        data['ends'][i][0], data['ends'][i][1], False, 'interval_%i' %

i)
starts.append(interval.StartExpr().Var())
durations.append(interval.DurationExpr().Var())
    intervals.append(interval)

# 2 ADD SHARED RESOURCE CONSTRAINT
solver.Add(solver.Cumulative(intervals, [1 for _ in intervals], 2,

'cumul'))
# 3 MAXIMIZE DURATIONS
obj_var = sum(interval.DurationExpr().Var() for interval in

intervals).Var()
obj = solver.Maximize(obj_var, 1)
db1 = solver.Phase(starts, solver.CHOOSE_FIRST_UNBOUND,
                   solver.ASSIGN_MIN_VALUE)
db2 = solver.Phase(durations, solver.CHOOSE_FIRST_UNBOUND,
                   solver.ASSIGN_MAX_VALUE)
db3 = solver.Phase([obj_var], solver.CHOOSE_FIRST_UNBOUND,
                   solver.ASSIGN_MIN_VALUE)
db = solver.Compose([db1, db2, db3])

log = solver.SearchLog(1000000, obj)

count = 0
solver.NewSearch(db, [obj, log])
while solver.NextSolution():
    count += 1
    print('Solution', count)
    for interval in intervals:
        print('Wait ([{}..{}] - [{}..{}]; duration: {}), \n'.format(
            interval.StartMin(),
            interval.StartMax(),
            interval.EndMin(),
            interval.EndMin(),
            interval.DurationExpr().Var().Value()))
solver.EndSearch()

Laurent Perron | Operations Research |<EMAIL_ADDRESS>| (33) 1 42 68 53
00
Le jeu. 26 mars 2020 à 13:51, Stepka<EMAIL_ADDRESS>a écrit :

It is just simplified test. In real task I have more complex vrptw problem
with scheduling. In my case I need to constraint SlackVars on a group of
the nodes with routing.solver().Cumulative().
And both tests shows how I think I can add constraits for SlackVars(). I
just make IntrevalVars that shouls match with SlackVars and constrain them
using Cumulative() function.
But when I use CP-SAT solver all is work perfectly. But when I try to do
same things using Routing solver - it is does not work.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/google/or-tools/issues/1937#issuecomment-604413121,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ACUPL3NC7BNGR3DJGKOJAMTRJNFWNANCNFSM4LTW4F2Q
.

Yes it works for routing model with this:
    routing.solver().NewSearch(db, [time_limit, obj, log])
    while routing.solver().NextSolution():
        ...
    routing.solver().EndSearch()

but I still need solution for vrptw.
How can I merge your code with this:
    search_parameters = pywrapcp.DefaultRoutingSearchParameters()
    solution = routing.SolveWithParameters(search_parameters)
    if solution:
        print_solution(solution, intervals, durations)

?

Hello!
Do you have any follow up on the latest response from Stepka to your post?
Would appreciate it!
Thanks!

This code works fine on the CP solver def main(): """Solve the VRP with time windows.""" data = create_data_model() solver = pywrapcp.Solver('') # 1 CREATE INTERVALS intervals = [] starts = [] durations = [] for i in range(len(data['starts'])): interval = solver.IntervalVar( data['starts'][i][0], data['starts'][i][1], data['durations'][i][0], data['durations'][i][1], data['ends'][i][0], data['ends'][i][1], False, 'interval_%i' % i) starts.append(interval.StartExpr().Var()) durations.append(interval.DurationExpr().Var()) intervals.append(interval) # 2 ADD SHARED RESOURCE CONSTRAINT solver.Add(solver.Cumulative(intervals, [1 for _ in intervals], 2, 'cumul')) # 3 MAXIMIZE DURATIONS obj_var = sum(interval.DurationExpr().Var() for interval in intervals).Var() obj = solver.Maximize(obj_var, 1) db1 = solver.Phase(starts, solver.CHOOSE_FIRST_UNBOUND, solver.ASSIGN_MIN_VALUE) db2 = solver.Phase(durations, solver.CHOOSE_FIRST_UNBOUND, solver.ASSIGN_MAX_VALUE) db3 = solver.Phase([obj_var], solver.CHOOSE_FIRST_UNBOUND, solver.ASSIGN_MIN_VALUE) db = solver.Compose([db1, db2, db3]) log = solver.SearchLog(1000000, obj) count = 0 solver.NewSearch(db, [obj, log]) while solver.NextSolution(): count += 1 print('Solution', count) for interval in intervals: print('Wait ([{}..{}] - [{}..{}]; duration: {}), \n'.format( interval.StartMin(), interval.StartMax(), interval.EndMin(), interval.EndMin(), interval.DurationExpr().Var().Value())) solver.EndSearch() Laurent Perron | Operations Research |<EMAIL_ADDRESS>| (33) 1 42 68 53 00 Le jeu. 26 mars 2020 à 13:51, Stepka<EMAIL_ADDRESS>a écrit :
…
It is just simplified test. In real task I have more complex vrptw problem with scheduling. In my case I need to constraint SlackVars on a group of the nodes with routing.solver().Cumulative(). And both tests shows how I think I can add constraits for SlackVars(). I just make IntrevalVars that shouls match with SlackVars and constrain them using Cumulative() function. But when I use CP-SAT solver all is work perfectly. But when I try to do same things using Routing solver - it is does not work. — You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub <#1937 (comment)>, or unsubscribe https://github.com/notifications/unsubscribe-auth/ACUPL3NC7BNGR3DJGKOJAMTRJNFWNANCNFSM4LTW4F2Q .

This code works fine on the CP solver def main(): """Solve the VRP with time windows.""" data = create_data_model() solver = pywrapcp.Solver('') # 1 CREATE INTERVALS intervals = [] starts = [] durations = [] for i in range(len(data['starts'])): interval = solver.IntervalVar( data['starts'][i][0], data['starts'][i][1], data['durations'][i][0], data['durations'][i][1], data['ends'][i][0], data['ends'][i][1], False, 'interval_%i' % i) starts.append(interval.StartExpr().Var()) durations.append(interval.DurationExpr().Var()) intervals.append(interval) # 2 ADD SHARED RESOURCE CONSTRAINT solver.Add(solver.Cumulative(intervals, [1 for _ in intervals], 2, 'cumul')) # 3 MAXIMIZE DURATIONS obj_var = sum(interval.DurationExpr().Var() for interval in intervals).Var() obj = solver.Maximize(obj_var, 1) db1 = solver.Phase(starts, solver.CHOOSE_FIRST_UNBOUND, solver.ASSIGN_MIN_VALUE) db2 = solver.Phase(durations, solver.CHOOSE_FIRST_UNBOUND, solver.ASSIGN_MAX_VALUE) db3 = solver.Phase([obj_var], solver.CHOOSE_FIRST_UNBOUND, solver.ASSIGN_MIN_VALUE) db = solver.Compose([db1, db2, db3]) log = solver.SearchLog(1000000, obj) count = 0 solver.NewSearch(db, [obj, log]) while solver.NextSolution(): count += 1 print('Solution', count) for interval in intervals: print('Wait ([{}..{}] - [{}..{}]; duration: {}), \n'.format( interval.StartMin(), interval.StartMax(), interval.EndMin(), interval.EndMin(), interval.DurationExpr().Var().Value())) solver.EndSearch() Laurent Perron | Operations Research |<EMAIL_ADDRESS>| (33) 1 42 68 53 00 Le jeu. 26 mars 2020 à 13:51, Stepka<EMAIL_ADDRESS>a écrit :

…
It is just simplified test. In real task I have more complex vrptw problem with scheduling. In my case I need to constraint SlackVars on a group of the nodes with routing.solver().Cumulative(). And both tests shows how I think I can add constraits for SlackVars(). I just make IntrevalVars that shouls match with SlackVars and constrain them using Cumulative() function. But when I use CP-SAT solver all is work perfectly. But when I try to do same things using Routing solver - it is does not work. — You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub <#1937 (comment)>, or unsubscribe https://github.com/notifications/unsubscribe-auth/ACUPL3NC7BNGR3DJGKOJAMTRJNFWNANCNFSM4LTW4F2Q .

My code shows the constraint works.
The tricky part to make it work was the search part. Can you try adapting
it to your example ?
Laurent Perron | Operations Research |<EMAIL_ADDRESS>| (33) 1 42 68 53
00
Le mar. 31 mars 2020 à 22:44, duca755<EMAIL_ADDRESS>a écrit :

Hello!
Do you have any follow up on the latest response from Stepka to your post?
Would appreciate it!
Thanks!
This code works fine on the CP solver def main(): """Solve the VRP with
time windows.""" data = create_data_model() solver = pywrapcp.Solver('') #
1 CREATE INTERVALS intervals = [] starts = [] durations = [] for i in
range(len(data['starts'])): interval = solver.IntervalVar(
data['starts'][i][0], data['starts'][i][1], data['durations'][i][0],
data['durations'][i][1], data['ends'][i][0], data['ends'][i][1], False,
'interval_%i' % i) starts.append(interval.StartExpr().Var())
durations.append(interval.DurationExpr().Var()) intervals.append(interval)
2 ADD SHARED RESOURCE CONSTRAINT solver.Add(solver.Cumulative(intervals,
[1 for _ in intervals], 2, 'cumul')) # 3 MAXIMIZE DURATIONS obj_var =
sum(interval.DurationExpr().Var() for interval in intervals).Var() obj =
solver.Maximize(obj_var, 1) db1 = solver.Phase(starts,
solver.CHOOSE_FIRST_UNBOUND, solver.ASSIGN_MIN_VALUE) db2 =
solver.Phase(durations, solver.CHOOSE_FIRST_UNBOUND,
solver.ASSIGN_MAX_VALUE) db3 = solver.Phase([obj_var],
solver.CHOOSE_FIRST_UNBOUND, solver.ASSIGN_MIN_VALUE) db =
solver.Compose([db1, db2, db3]) log = solver.SearchLog(1000000, obj) count
= 0 solver.NewSearch(db, [obj, log]) while solver.NextSolution(): count +=
1 print('Solution', count) for interval in intervals: print('Wait ([{}..{}]

[{}..{}]; duration: {}), \n'.format( interval.StartMin(),
interval.StartMax(), interval.EndMin(), interval.EndMin(),
interval.DurationExpr().Var().Value())) solver.EndSearch() Laurent Perron |
Operations Research |<EMAIL_ADDRESS>| (33) 1 42 68 53 00 Le jeu. 26
mars 2020 à 13:51, Stepka<EMAIL_ADDRESS>a écrit :
… <#m_-5810027570700119166_>
It is just simplified test. In real task I have more complex vrptw problem
with scheduling. In my case I need to constraint SlackVars on a group of
the nodes with routing.solver().Cumulative(). And both tests shows how I
think I can add constraits for SlackVars(). I just make IntrevalVars that
shouls match with SlackVars and constrain them using Cumulative() function.
But when I use CP-SAT solver all is work perfectly. But when I try to do
same things using Routing solver - it is does not work. — You are receiving
this because you are subscribed to this thread. Reply to this email
directly, view it on GitHub <#1937 (comment)
https://github.com/google/or-tools/issues/1937#issuecomment-604413121>,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ACUPL3NC7BNGR3DJGKOJAMTRJNFWNANCNFSM4LTW4F2Q
.

This code works fine on the CP solver def main(): """Solve the VRP with
time windows.""" data = create_data_model() solver = pywrapcp.Solver('') #
1 CREATE INTERVALS intervals = [] starts = [] durations = [] for i in
range(len(data['starts'])): interval = solver.IntervalVar(
data['starts'][i][0], data['starts'][i][1], data['durations'][i][0],
data['durations'][i][1], data['ends'][i][0], data['ends'][i][1], False,
'interval_%i' % i) starts.append(interval.StartExpr().Var())
durations.append(interval.DurationExpr().Var()) intervals.append(interval)
2 ADD SHARED RESOURCE CONSTRAINT solver.Add(solver.Cumulative(intervals,
[1 for _ in intervals], 2, 'cumul')) # 3 MAXIMIZE DURATIONS obj_var =
sum(interval.DurationExpr().Var() for interval in intervals).Var() obj =
solver.Maximize(obj_var, 1) db1 = solver.Phase(starts,
solver.CHOOSE_FIRST_UNBOUND, solver.ASSIGN_MIN_VALUE) db2 =
solver.Phase(durations, solver.CHOOSE_FIRST_UNBOUND,
solver.ASSIGN_MAX_VALUE) db3 = solver.Phase([obj_var],
solver.CHOOSE_FIRST_UNBOUND, solver.ASSIGN_MIN_VALUE) db =
solver.Compose([db1, db2, db3]) log = solver.SearchLog(1000000, obj) count
= 0 solver.NewSearch(db, [obj, log]) while solver.NextSolution(): count +=
1 print('Solution', count) for interval in intervals: print('Wait ([{}..{}]

[{}..{}]; duration: {}), \n'.format( interval.StartMin(),
interval.StartMax(), interval.EndMin(), interval.EndMin(),
interval.DurationExpr().Var().Value())) solver.EndSearch() Laurent Perron |
Operations Research |<EMAIL_ADDRESS>| (33) 1 42 68 53 00 Le jeu. 26
mars 2020 à 13:51, Stepka<EMAIL_ADDRESS>a écrit :

… <#m_-5810027570700119166_>
It is just simplified test. In real task I have more complex vrptw problem
with scheduling. In my case I need to constraint SlackVars on a group of
the nodes with routing.solver().Cumulative(). And both tests shows how I
think I can add constraits for SlackVars(). I just make IntrevalVars that
shouls match with SlackVars and constrain them using Cumulative() function.
But when I use CP-SAT solver all is work perfectly. But when I try to do
same things using Routing solver - it is does not work. — You are receiving
this because you are subscribed to this thread. Reply to this email
directly, view it on GitHub <#1937 (comment)
https://github.com/google/or-tools/issues/1937#issuecomment-604413121>,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ACUPL3NC7BNGR3DJGKOJAMTRJNFWNANCNFSM4LTW4F2Q
.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/google/or-tools/issues/1937#issuecomment-606864784,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ACUPL3NDPCFWQPZKDVIAXK3RKJI3HANCNFSM4LTW4F2Q
.

I'm trying to adapt your code to my task and faced with print routes problem. This code failed:
    count = 0
    routing.solver().NewSearch(db, [time_limit, obj, log])
    while routing.solver().NextSolution():
        count += 1
        plan_output = 'Solution #{}\n'.format(count)

        for vehicle_id in range(data['num_vehicles']):
            index = routing.Start(vehicle_id)
            plan_output += 'Route for vehicle {}:\n'.format(vehicle_id)
            while not routing.IsEnd(index):
                node_index = manager.IndexToNode(index)

                plan_output += '[ #{} -> \n'.format(
                    node_index
                )

                index = routing.NextVar(index).Value()
        for interval in intervals:
            plan_output += 'Wait ([{}..{}] - [{}..{}]; duration: {}), \n'.format(
                get_time_string(interval.StartMin()),
                get_time_string(interval.StartMax()),
                get_time_string(interval.EndMin()),
                get_time_string(interval.EndMin()),
                get_time_string(interval.DurationExpr().Var().Value()))

        print(plan_output)
    routing.solver().EndSearch()

Code prints:
WARNING: Logging before InitGoogleLogging() is written to STDERR
I0402 10:55:39.796936 12248 search.cc:253] Start search (memory used = 64.69 MB)
I0402 10:55:39.797935 12248 search.cc:253] Root node processed (time = 0 ms, constraints = 48, memory used = 64.98 MB)
I0402 10:55:39.809952 12248 search.cc:253] Solution #0 (objective value = 40, time = 12 ms, branches = 1262, failures = 627, depth = 635, memory used = 65.29 MB, limit = 0%)
F0402 10:55:39.814927 12248 expressions.cc:1340] Check failed: min_.Value() == max_.Value() (0 vs. 13)  variable Nexts0(0..13) is not bound.
*** Check failure stack trace: ***

This line is wrong: index = routing.NextVar(index).Value()
What I doing wrong?

of course, the routing model is only 'solved' if you use the
routing.Solve() method.
Laurent Perron | Operations Research |<EMAIL_ADDRESS>| (33) 1 42 68 53
00
Le jeu. 2 avr. 2020 à 11:01, Stepka<EMAIL_ADDRESS>a écrit :

I'm trying to adapt your code to my task and faced with print routes
problem. This code failed:
count = 0
routing.solver().NewSearch(db, [time_limit, obj, log])
while routing.solver().NextSolution():
    count += 1
    plan_output = 'Solution #{}\n'.format(count)

    for vehicle_id in range(data['num_vehicles']):
        index = routing.Start(vehicle_id)
        plan_output += 'Route for vehicle {}:\n'.format(vehicle_id)
        while not routing.IsEnd(index):
            node_index = manager.IndexToNode(index)

            plan_output += '[ #{} -> \n'.format(
                node_index
            )

            index = routing.NextVar(index).Value()
    for interval in intervals:
        plan_output += 'Wait ([{}..{}] - [{}..{}]; duration: {}), \n'.format(
            get_time_string(interval.StartMin()),
            get_time_string(interval.StartMax()),
            get_time_string(interval.EndMin()),
            get_time_string(interval.EndMin()),
            get_time_string(interval.DurationExpr().Var().Value()))

    print(plan_output)
routing.solver().EndSearch()

Code prints:
WARNING: Logging before InitGoogleLogging() is written to STDERR
I0402 10:55:39.796936 12248 search.cc:253] Start search (memory used = 64.69 MB)
I0402 10:55:39.797935 12248 search.cc:253] Root node processed (time = 0 ms, constraints = 48, memory used = 64.98 MB)
I0402 10:55:39.809952 12248 search.cc:253] Solution #0 (objective value = 40, time = 12 ms, branches = 1262, failures = 627, depth = 635, memory used = 65.29 MB, limit = 0%)
F0402 10:55:39.814927 12248 expressions.cc:1340] Check failed: min_.Value() == max_.Value() (0 vs. 13)  variable Nexts0(0..13) is not bound.
*** Check failure stack trace: ***
This line is wrong: index = routing.NextVar(index).Value()
What I doing wrong?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/google/or-tools/issues/1937#issuecomment-607716793,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ACUPL3OXEE2C7E2Y632VK3DRKRH45ANCNFSM4LTW4F2Q
.

I'm sorry, but I frustrated. Am I right that or-tools now cannot solve routing model and constrain IntervalVars via Cumulative() function in one case? Will it be added in the future?

It can:
https://github.com/google/or-tools/blob/stable/ortools/constraint_solver/samples/vrp_resources.py
Laurent Perron | Operations Research |<EMAIL_ADDRESS>| (33) 1 42 68 53
00
Le jeu. 2 avr. 2020 à 11:34, Stepka<EMAIL_ADDRESS>a écrit :

I'm sorry, but I frustrated. Am I right that or-tools now cannot solve
routing model and constrain IntervalVars via Cumulative() function in one
case? Will it be added in the future?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/google/or-tools/issues/1937#issuecomment-607733632,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ACUPL3J7EJNZYHCQUDTYMS3RKRL3ZANCNFSM4LTW4F2Q
.

I tryied VRP resources example, updated it with IntervalVar instead FixedDurationIntervalVar. And this code shown the same result as example. So, it can be a signal that problem is not with IntevalVar and Cumulative.
But I found two problems again.
First - from output when I run VRP example with fixed duration vars:
Route for vehicle 0:
0 Time(5,5) -> 8 Time(8,8) -> 14 Time(11,11) -> 16 Time(13,13) -> 0 Time(20,20)
Time of the route: 20min

Route for vehicle 1:
0 Time(0,0) -> 12 Time(4,4) -> 13 Time(6,6) -> 15 Time(11,11) -> 11 Time(14,14) -> 0 Time(20,20)
Time of the route: 20min

Route for vehicle 2:
0 Time(5,5) -> 7 Time(7,7) -> 1 Time(11,11) -> 4 Time(13,13) -> 3 Time(14,14) -> 0 Time(25,25)
Time of the route: 25min

Route for vehicle 3:
0 Time(0,0) -> 9 Time(2,3) -> 5 Time(4,5) -> 6 Time(6,9) -> 2 Time(10,12) -> 10 Time(14,16) -> 0 Time(25,25)
Time of the route: 25min

As you see each vehicle transit to a first location from depot for a 2..4  time units, but there are not adds load_time (5 time units) in the arrival time. Looks like duration is omitted by solver. It is looks like a bug.
And the second problem, when I try to link my interval var duration to slackvars solver has no affect. Look like it linked with bug above.

see https://github.com/google/or-tools/issues/1715#issuecomment-574156540

Hello,
This worked fine for me:
routing.solver().Add(routing.solver().Cumulative(vector< IntervalVar * >, vector< int > &demands, int capacity, string &name).
I will try to re-examine, I hope no hidden issues ...


Websocket SockJS and Zuul

I'm trying to use websocket with Zuul, but I can't access to it. I'm getting connection lost after some ms. I was looking and I found that I need to increase the time of ribbon ConnectTimeout and ReadTimeout and it was working for some some seconds and after it's stopped. Is there any solution for this ?
I'm using Spring boot 2.0.3.RELEASE with Spring cloud Finchley.RELEASE
Here is my configuration for Zuul:
hystrix:
  command:
    default:
      execution:
        isolation:
          thread:
            timeoutInMilliseconds: 50000

ribbon:
  eureka:
    enabled: true
  ReadTimeout: 50000
  ConnectTimeout: 3000
  MaxAutoRetries: 0
  MaxAutoRetriesNextServer: 1
  OkToRetryOnAllOperations: false

Please direct your question to the Spring Boot issue tracker.

@artgon it's done https://github.com/spring-projects/spring-boot/issues/14280, but can you tell me why ?
thank you.

There is no support for neither Zull nor Ribbon in Spring Boot. This request should probably have been redirected to Spring Cloud Netflix.


Web5 Upgrade 0.8.3

This PR updates the dev site to Web5 0.8.3. It satisfies #1033.
At the time of this PR, tests are failing; must be addressed with more commits to this branch before merging to main.

update @web5/api to rc
updating quickstart and dwn-sdk version
update lock file
remove record.delete() from code snippets
cleared more record.delete()
Clean tests (#1057)
resolve quickstart tests (#1059)
resolve quickstart tests
cleanup assertion
widget test
Update web5 version to final release
Update lockfile

What type of PR is this? (check all applicable)

[ ] ♻ Refactor
[ ] ✨ New Feature
[ ] 🐛 Bug Fix
[ ] 📝 Documentation Update
[ ] 👷 Example Application
[ ] 🧑💻 Code Snippet
[ ] 🎨 Design
[ ] 📖 Content
[ ] 🧪 Tests
[ ] 🔖 Release
[ ] 🚩 Other

Description

This PR [adds/removes/fixes/replaces] this [feature/bug/etc].
Related Tickets & Documents

Resolves #
Mobile & Desktop Screenshots/Recordings

Added code snippets?

[ ] 👍 yes
[ ] 🙅 no, because they aren't needed

Added tests?

[ ] 👍 yes
[ ] 🙅 no, because they aren't needed
[ ] 🙋 no, because I need help

No tests? Add a note

Added to documentation?

[ ] 📜 readme
[ ] 📜 contributing.md
[ ] 📓 general documentation
[ ] 🙅 no documentation needed

No docs? Add a note

[optional] Are there any post-deployment tasks we need to perform?
[optional] What gif best describes this PR or how it makes you feel?

Something is weird here. The PR test runs look fine:
https://github.com/TBD54566975/developer.tbd.website/actions/runs/7134909907/job/19430647404?pr=1063
Locally when running pnpm test I see failures, so...my environment? Running a different command? Something. Before this PR, tests running locally are clean for me.


fix(vmsync): handle empty time returned from VMaaS

[RHINENG-12488]
Secure Coding Practices Checklist GitHub Link

https://github.com/RedHatInsights/secure-coding-checklist

Secure Coding Checklist

[x] Input Validation
[x] Output Encoding
[x] Authentication and Password Management
[x] Session Management
[x] Access Control
[x] Cryptographic Practices
[x] Error Handling and Logging
[x] Data Protection
[x] Communication Security
[x] System Configuration
[x] Database Security
[x] File Management
[x] Memory Management
[x] General Coding Practices

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 60.95%. Comparing base (13cd3fb) to head (79012cd).
Report is 53 commits behind head on master.

Additional details and impacted files
@@            Coverage Diff             @@
##           master     #218      +/-   ##
==========================================
+ Coverage   60.07%   60.95%   +0.87%
==========================================
  Files          46       50       +4
  Lines        2928     2561     -367
==========================================
- Hits         1759     1561     -198
+ Misses        969      784     -185
- Partials      200      216      +16

Flag
Coverage Δ

unittests
60.95% <100.00%> (+0.87%)
:arrow_up:

Flags with carried forward coverage won't be shown. Click here to find out more.

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

/retest

/retest


add init command

rt.

Codecov Report

Merging #30 into v2.0 will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             v2.0      #30   +/-   ##
=======================================
  Coverage   91.33%   91.33%
=======================================
  Files          35       35
  Lines        1120     1120
=======================================
  Hits         1023     1023
  Misses         97       97

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 359c7fa...1e31818. Read the comment docs.

Thanks :-)
👍


Start on tests: the most basic tests

Adding tests, to address https://github.com/jdeschamps/napari-sklearn-decomposition/issues/6
Hopefully with CI fixed, they will run!
Currently it's just the most basic tests:

that sample data is loaded correctly
that a widget is created
(Note: I commented out the example tests because they fail, but for now leaving them as a reference.)

I fleshed out the tests a bit.
The first test just checks the main widget, which is called by decomposition(). It makes sure that it works and that the sub-widget is also properly initialized with default values.
In the 2nd test, the 3 implemented methods are tested: that they make an output image with the correct name and shape.


[#646] Initial work on i18n keys in submission-forms.xml

References

Addresses dspace-angular#646
Related to angular PR https://github.com/DSpace/dspace-angular/pull/1670

Description
All form components used by submission in dspace-angular are piped through 'translate'. This PR aims to shift localisation of submission input definitions over to dspace-angular en.json5 to take advantage of this localisation.
This means administrators will not need to maintain separate submission_form_xx.xml forms which are cumbersome to maintain, and keeps i18n labels, hints, required messages in the frontend application with other form localisation.
This PR is a work in progress. The keys referenced here are in the en.json5 file in  dspace-angular#1670
Checklist

[ ] My PR is small in size (e.g. less than 1,000 lines of code, not including comments & integration tests). Exceptions may be made if previously agreed upon.

I'm closing this PR as it is related to the discussion finalized here https://github.com/DSpace/dspace-angular/pull/1670#issuecomment-1185685460

Just a note - even though the angular work is rejected, this PR that replaces text with labels in the backend forms could still be useful for any future work that does the translation in the backend, unless I'm missing something.
Either way, I won't be continuing to work on this. But it could save somebody else some time.


Adding language switcher to docs main page.

Fixes #885.

@jgeewax Do you know why the Ruby folks use a PNG instead of SVG image?

I have no idea. @blowmage : Any idea on this?

The image I was given was for rails, not ruby. I just haven't made a svg for it yet.

I created a SVG for ruby last night. The URL is http://googlecloudplatform.github.io/gcloud-ruby/img/icon-lang-ruby.svg.

Thanks

Updated with the SVG. This PR is ready to go.

LGTM except the doubled-load of jQuery.

Addressed the jQuery question. LMK what you think (feel free to merge if you're OK with it).


Fix ListStorageSpaces for ocm

Currently there are no mountpoints for federated shares. We just return an empty list on the ListStorageSpaces request.
Related: https://github.com/owncloud/ocis/issues/10689

Now I am confused. So we have tests that expect the ocm shares to be accessible via  /ocm/{id}. For that to work the ListStorageSpaces request acutally needs to return them as mountpoints, I think.
I guess this needs some discussion.


Issue #SB-18007 fix: All my contents & collaborations : The contenttype "courseassessment" is not available for the users to apply filters and get the self assess contents

Issue #SB-18007 fix: All my contents & collaborations : The contenttype "courseassessment" is not available for the users to apply filters and get the self assess contents

Have you verified, courseassessment is added in the configuration with can be searchable in the workspace.


Can't screen_share in electron

Describe the bug
When I use electron to share the screen through webrtc, I am prompted that I have no permission under windows or mac system (in fact, I have obtained the corresponding permission)
Reproduction
localParticipant.setScreenShareEnabled(true);
Logs
setTrackEnabled screen_share true
Room.ts:860 room event mediaDevicesError DOMException: Permission denied

System Info
System:
    OS: macOS 11.3
    CPU: (8) arm64 Apple M1
    Memory: 117.47 MB / 16.00 GB
    Shell: 5.8 - /bin/zsh
  Binaries:
    Node: 16.16.0 - /usr/local/bin/node
    Yarn: 1.22.19 - /usr/local/bin/yarn
    npm: 8.11.0 - /usr/local/bin/npm
    Watchman: 2<IP_ADDRESS> - /opt/homebrew/bin/watchman
  Browsers:
    Chrome: 110.0.5481.177
    Safari: 14.1
  npmPackages:
    livekit-client: ^0.17.0 => 0.17.0

Severity
annoyance
Additional Information
No response

Hi,
this is expected as electron doesn't support the standard getDisplayMedia API.
to work around this, you can create the tracks manually yourself using the electron API https://www.electronjs.org/docs/latest/api/desktop-capturer and publish them with localParticipant.publishTrack

Hi, this is expected as electron doesn't support the standard getDisplayMedia API. to work around this, you can create the tracks manually yourself using the electron API https://www.electronjs.org/docs/latest/api/desktop-capturer and publish them with localParticipant.publishTrack

Thank you for the ideas you gave me！

@lukasIO I'm implementing the screen share the way you suggested and it works if i do participant.localPublish(). But, I can't get tracks by  useTracks([Track.Source.ScreenShare], { onlySubscribed: true}). Do you know there can be problem when localParticipant.publishTrack is used directly?

I think the newer versions of electron actually implement a shim for getDisplayMedia so you might not need the workaround if you configure your electron app properly to support it. https://www.electronjs.org/docs/latest/api/session
When manually publishing tracks, you'll have to make sure that you assign the correct source yourself.
E.g.
const localVideoTrack = new LocalVideoTrack(myAcquiredScreenShareTrack);
localVideoTrack.source = Track.Source.ScreenShare;

room.localParticipant.publishTrack(localVideoTrack)


Update "Beatless: Final Stage" for other fansubs

This PR extends #28 for fansub groups other than HorribleSubs.
MyAnimeList and Kitsu both list Beatless as 20 episodes instead of 24. Investigating some more, there seems to be recap episodes that HorribleSubs has included, but other fansub groups such as Asuka Subs, PuyaSubs!, and Erai-Subs either omit them and consider the series as 20 episodes or list the recap episodes as ".5" (e.g. 5.5, 9.5, 14.5, 16.5), with an additional 4 episodes (21-24) considered as Beatless: Final Stage.
As such, this PR will map episode 21-24 to Final Stage. Note that for HorribleSubs, this means Beatless episodes 21-24 would be considered as Beatless: Final Stage.
Tested using Kitsu service and Asuka Subs.

From what I can tell, this PR:

Fixes: Asuka Subs, HR, KH, Pog42 and possibly some others
Breaks: HorribleSubs
Does not affect: Erai-raws

It seems the more recent BD releases do not include the recap episodes, so I guess this is overall a good trade off.


[FLINK-18226][runtime] Fix ActiveResourceManager requesting extra workers on termination of existing workers.

What is the purpose of the change
This PR fixes the problem that ActiveResourceManager may request unnecessary extra workers on termination of existing workers.
Brief change log
The equation previously used by ActiveResourceManager for deciding whether and how many new workers to request on termination of existing workers is:
workersToRequest = workersRequiredBySlotManager - workersRequestedByResourceManagerNotAllocated
If there are workers allocated, being started but not yet registered, unnecessary new workers will be requested.
Now the equation is changed to:
workersToRequest = workersRequiredBySlotManager - workersRequestedByResourceManagerNotRegistered
Verifying this change
New test cases added in KubernetesResourceManagerTest and YarnResourceManagerTest.
Does this pull request potentially affect one of the following parts:

Dependencies (does it add or upgrade a dependency): (no)
The public API, i.e., is any changed class annotated with @Public(Evolving): (no)
The serializers: (no)
The runtime per-record code paths (performance sensitive): (no)
Anything that affects deployment or recovery: JobManager (and its components), Checkpointing, Kubernetes/Yarn/Mesos, ZooKeeper: (yes)
The S3 file system connector: (no)

Documentation

Does this pull request introduce a new feature? (no)
If yes, how is the feature documented? (not applicable

Thanks for the review, @tillrohrmann.
I've addressed your comments. Please take another look.
BTW. The revert commit is added to clearly show what have been changed since your last review. I'll remove it together with the original renaming commit at merging, if you're good with the changes.

Thanks @tillrohrmann, your last comment makes sense to me.
I've updated the PR:

Rebased onto the latest master branch
Squashed previous commits
Addressed your last comments in the new fixup commit.


i am having issue in compiling

55 |     for(register uint32_t i = BITS; i > 0; --i) {
|                           ^
Using library WiFiManager-master at version 2.0.17 in folder: C:\Users\prase\Documents\Arduino\libraries\WiFiManager-master
Using library ESP8266WiFi at version 1.0 in folder: C:\Users\prase\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.1.0\libraries\ESP8266WiFi
Using library ESP8266WebServer at version 1.0 in folder: C:\Users\prase\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.1.0\libraries\ESP8266WebServer
Using library DNSServer at version 1.1.1 in folder: C:\Users\prase\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.1.0\libraries\DNSServer
Using library Time-master at version 1.5 in folder: C:\Users\prase\Documents\Arduino\libraries\Time-master
Using library EEPROM at version 1.0 in folder: C:\Users\prase\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.1.0\libraries\EEPROM
Using library WiFi at version 1.2.7 in folder: C:\Users\prase\Desktop\arduino-nightly\libraries\WiFi
Using library NTPClient at version 3.2.1 in folder: C:\Users\prase\Documents\Arduino\libraries\NTPClient
Using library FastLED at version 3.5.0 in folder: C:\Users\prase\Documents\Arduino\libraries\FastLED
Using library SPI at version 1.0 in folder: C:\Users\prase\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.1.0\libraries\SPI
exit status 1
Error compiling for board LOLIN(WEMOS) D1 R2 & mini.

Sorry, but I can not really see what is your issue. I can see that you are trying to compile some code (original or edited?) and you are using LOLIN(WEMOS) D1 R2 & mini board. Because of this board, I think that this is the issue. There are some mentions of Nodemcu board, but code is really focused on ESP32 type of boards. I would suggest that you will try to change WiFi.h to ESP8266WiFi.h and some other libraries which are not compatible with ESP8266 boards and this way you could be able to make it work.

I see. can you please tell me what version of esp8266 board and libraries used in this code. and the original parallize LMG v1 code
I need only the library versions. because i had those libraries few months ago, it worked fine, but few days ago i reinstall os on my system and everything is gone, now i installing the original lazy clock code in esp8266 it installed but some issue coming.

I was compiling this code

but getting error on esp8266 after changing the WiFi.h to ESP8266WiFi.h
can you compile it for esp8266 and send me the bin file


Error renewing monitor

LG Air Conditioner Model
S4-W12JARPA
Model in HomeKit: RAC_056905_WW
Describe the bug
Even though I've set it up multiple times, error 400 continue happening.
Symptom check

Does your unit appear in the Home app? Yes
Is the current on/off state, temperature, and mode being reported? No
Does your unit respond to the controls? No

Relevant logs
[2020-6-23 22:36:53] [LgThinqAirConditioner] Error renewing monitor Error: Request failed with status code 400

Have you logged into the LG app? Mine was doing the same until I agreed to the updated privacy policy and TOS.

Logged in again, there was no updated privacy policy and TOS. Then reinstalled the plugin and the same error persists :(

[2020-6-26 16:00:25] [LgThinqAirConditioner] ActiveCharacteristic: Failed to set state 0 Error: Request failed with status code 400
[2020-6-26 16:01:00] [LgThinqAirConditioner] Error renewing monitor Error: Request failed with status code 400
[2020-6-26 16:01:00] [LgThinqAirConditioner] ActiveCharacteristic: Error parsing state TypeError: Cannot read property 'airState.operation' of undefined
[2020-6-26 16:01:00] [LgThinqAirConditioner] SwingModeCharacteristic: Error parsing state TypeError: Cannot read property 'airState.wDir.vStep' of undefined
[2020-6-26 16:01:00] [LgThinqAirConditioner] RotationSpeedCharacteristic: Error parsing state TypeError: Cannot read property 'airState.windStrength' of undefined
[2020-6-26 16:01:00] [LgThinqAirConditioner] CoolingThresholdCharacteristic: Error parsing state TypeError: Cannot read property 'airState.tempState.target' of undefined
[2020-6-26 16:01:00] [LgThinqAirConditioner] HeatingThresholdCharacteristic: Error parsing state TypeError: Cannot read property 'airState.tempState.target' of undefined
[2020-6-26 16:01:00] [LgThinqAirConditioner] TargetHeaterCoolerStateCharacteristic: Error parsing state TypeError: Cannot read property 'airState.opMode' of undefined
[2020-6-26 16:01:00] [LgThinqAirConditioner] CurrentTemperatureCharacteristic: Error parsing state TypeError: Cannot read property 'airState.tempState.current' of undefined

Hi there! Thanks for writing in.
When you boot Homebridge, do the early logs for LgThinqAirConditioner say anything about ThinQ 1?

Hey @ticruz98, I'm going to close this as there's been no activity, but if you're still seeing this after updating to the latest version, feel free to comment and I'll dig into it further.


CREATE A NOTIFICATION BADGE FOR GOALS

User should have the option of subscribing to or unsubscribing from notifications about goals

user should be notified with a badge icon when goals are created

Should they actually have that power? If the goals are for them, why give them the option to unsubscribe?


Why add same noise to pairwise images?

Hi, thank you for the efforts in open-source the paper code. When looking into the code, I found it manually modified the noise added to the pairwise images to be the same.
https://github.com/SalesforceAIResearch/DiffusionDPO/blob/f3ca6f24ac03661c442638296d173fdd7eae1ad5/train.py#L1053
I'm wondering why this needs to be done. If this is necessary by theory?

From my understanding of the paper, the formula in the paper has reflected this point. From the point of view of training, at tempstep n, how should we judge which picture is good, that is, adding the same noise to the pair of pictures at time t


Prerequisites section should have minimal version of runtimes and tools

https://awslabs.github.io/aws-cdk/getting-started.html
With reference to Getting Started, I tried to make TypeScript's AWS CDK app.
In the Compile the Code section, I got an error when building TypeScript.
https://awslabs.github.io/aws-cdk/getting-started.html#compile-the-code
$ npm run build
'es3', 'es5', 'es6', 'es2015', 'es2016', 'es2017', 'esnext' for tsconfig.json (3,19): error TS 6046: Argument for ' .

In tsconfig.json , target of compilerOptions is set to ES2018.
Therefore, TypeScript needs to be a version supporting ES2018.
ES2018 is supported by TypeScript 2.7.
https://github.com/Microsoft/TypeScript/issues/20342
The version of TypeScript installed in my environment is old.
$ tsc -v
Version 2.6.2

It was solved by installing the latest TypeScript and building it.
$ npm install typescript -g
$ tsc -v
Version 3.0.3
$ npm run build

It will help peeple like me that using old version TypeScript mindlessly.

Assigning to Mathew as he owns the .NET port.

Here's what I have:
CLR version >= 4.5

From Aaron for C#:
.NET standard 2.0 compatible implementation:

.NET Core >= 2.0
.NET Framework >= 4.6.1
Mono >= 5.4

As soon as I publish the updated doc I will provide the URL here and close this issue.

https://docs.aws.amazon.com/CDK/latest/userguide/install_config.html#install_config_prerequisites


mediaCapturePermissionGrantType="grant" does not work

mediaCapturePermissionGrantType="grant" does not do what it is supposed to do. Every time the app restarts and the webview needs the permission, a permission prompt appears. Also tried other values like grantIfSameHostElsePrompt, same problem.

To Reproduce:

My webview needs orientation and motion permission. I also made sure the app has this permission already. Still, the webview prompts the user every time for permission.

Screenshots/Videos:

Environment:

OS: iOS
OS version: iOS 16.0
react-native version: 0.70.3 (old architecture)
react-native-webview version: 11.23.1

If you debug with XCode, is _mediaCapturePermissionGrantType set to the expected value in requestMediaCapturePermissionForOrigin? Curious if it's not getting set correctly, or if there's a race condition and it's being set after that method is invoked...

@TheAlmightyBob it seems to be set correctly. I can't find any issue in the library's code, everything I've tried has resulted in the same problem.

@TheAlmightyBob it seems to be set correctly. I can't find any issue in the library's code, everything I've tried has resulted in the same problem.

Hi @RominHalltari have you found a solution for this? I'm facing the same issue: https://github.com/react-native-webview/react-native-webview/issues/2942


I asked my browser to remember my credentials for the UI and it doesn't remember them

We need dem cookies.

We can't use cookies for that purpose (partially because st2auth doesn't support cookie and partially because they make very little sense in context of token-based authentication). Instead, we're storing the token in localStorage. So, you telling me you can't a) reload the page and b) open a new tab, both without the need to relogin again?

@lakshmi-kannan I can't reproduce the issue. Is it still a problem for you? Could you please describe it in details?


Run process with PRETEXT flag

For a process with PRETEXT flag set:

pop context from return stack, store it in $22 CONTEXT
put the Method byteCode in RW
put the Context stack in RS
set the other pseudoregisters as usual
change RPS to RUNNING $01
jump to $F800 BCDO

Process setup:

set $E0 next process
set RPS to PRETEXT
push Context on the return stack

When the scheduler reaches the new process it gets initialized.
Next time around it is ready to run.

You'll need to make sure that the new process is in the process list. That is, an existing process points to it. If this is process 0 it should be fine.

ByteCode 9N Send builds the new context and saves it in RCX. It then sets RPS to PFPRETEXT.
The next slice will fill in the process from the context in RCX.
The slice after begins execution of the new context.
Note that the return byteCodes are not yet implemented (One way trip).


Clarify end result of choice type

Why:
I wasn't sure if the choice might allow me a multi-select option (which would be great!!) so I had to run through and test it. The docs could be a bit clearer here to avoid this extra work.
Closes: #25125
What's being changed (if available, include any code snippets, screenshots, or gifs):
The Note section under [on.workflow_dispatch.inputs](https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#onworkflow_dispatchinputs) seemed the most reasonable place to put it.
Check off the following:

[  ] I have reviewed my changes in staging (look for the "Automatically generated comment" and click the links in the "Preview" column to view your latest changes).
[  ] For content changes, I have completed the self-review checklist.

@randi274 Thanks so much for opening an issue and submitting a PR! I edited your post slightly to link it to your issue 👍
I'll get this triaged for review :zap:


feat: attach and filter lemmas

Match https://github.com/leanprover-community/mathlib/pull/18087

I will add the content once https://github.com/leanprover-community/mathlib/pull/18087 is in.

This one is now ready to be ported

Thanks!
bors merge


Add buffer for current request while iterating through history

Description:
This pull request adds a buffer for the current request to improve efficiency while iterating through history.

Codecov Report
Attention: Patch coverage is 30.00000% with 7 lines in your changes missing coverage. Please review.

Project coverage is 83.00%. Comparing base (906bdeb) to head (c924981).

Files with missing lines
Patch %
Lines

pkg/core/edit/editor.go
30.00%
6 Missing and 1 partial :warning:

Additional details and impacted files
@@            Coverage Diff             @@
##             main      #75      +/-   ##
==========================================
- Coverage   83.47%   83.00%   -0.47%
==========================================
  Files          20       20
  Lines        1664     1671       +7
==========================================
- Hits         1389     1387       -2
- Misses        230      238       +8
- Partials       45       46       +1

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Actually return devices

Fixes #913
Fixes #914
When we use aperture.devices fallback, I forgot to actually return the devices array
Also fixes the issue for when the user is on 10.13, and doesn't have swift libs installed, where we can't get the system default device (aperture doesn't return that). So it hides the name from the menus, and if it's selected at the time of recording, we just pick the first input in the list as the "default".

I cannot test the actual change as I don't have macOS 10.13, but the code looks ok.

I threw errors in the code where the 10.13 issue would be to test it, and it worked 👍


Remove dependency on sphinx-autodoc-typehints

Summary
This replaces the whole usage of the separate package sphinx-autodoc-typehints with the built-in support from autodoc, available (with this combination of options) since Sphinx 5.0.  This removes a docs dependency that has caused us significant problems before due to its instability, and the built-in handling in autodoc is much cleaner as well; rather than trying to textually modify the docstring, this version (correctly) mutates the parsed rST structure, which also naturally it 100% compatible with the Napoleon processing.

Details and comments
I set the type-hint location to be both in the signatures and descriptions (our current behaviour is only in the descriptions, unless there's a typing.overload).  I'm happy to make it either just signatures or just descriptions, as people prefer.  Here's an example of the new output for QuantumCircuit.if_else (a function that currently only has type hints in the signature):

(The slightly buggy output is because of Qiskit/qiskit_sphinx_theme#183; it's pre-existing for  this change.)
For reference, here's what it looks like in the built documentation.
Thanks to @levbishop for pointing out that autodoc does this natively now.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.003%) to 85.344%

Totals

Change from base Build<PHONE_NUMBER>:
0.003%

Covered Lines:
67531

Relevant Lines:
79128

💛  - Coveralls

Having the typehints in the signature as well make it too busy for me personally and hard to read it, as I ave to search hard to try find the parameter names, which gives me a clue what it takes. I much prefer just the names/default values of the parameters in the signature, as before, which for me gives a better overview. And if I need the type and more detail on what it does I can look at parameters.

We can do that instead if people prefer - it's a one-line configuration change.  If we're on board with this PR in general (I'll wait for technical review), I'll post a little vote to gather people's preferences, and at the end of the day, the docs squad can say how they prefer the information is presented.
This particular example is more complex because its allowed inputs are very permissive - in the actual code they're hidden behind a type alias (QubitSpecifier), but Sphinx at the moment is resolving that into the concrete output.

Sure, I am just mindful of the fact we use typehinting extensively in the algos and apps. VQE for instance goes from

to

BTW I was hoping it might improve the output for dataclasses where the types in the attributes are all capitalized - sadly it did not from what I looked at.

types in the attributes are all capitalized

I'd be very surprised if Sphinx itself is modifying the HTML output to capitalise everything.  Do you have a link to an HTML page where that's happening?  Guessing completely in the dark, it sounds more like a wayward CSS text-transform: uppercase rule in the theme than something Sphinx would be doing.

By the way: the main point of this PR isn't meant to be a change in the style, it's the change to do the type-hint interpretation using Sphinx built-ins rather than the flaky sphinx-autodoc-typehints package.  I'm on board with whichever style people want the PR to merge with.

Yeah, I understood the main point was to change to the built in way.
A dataclass example https://qiskit.org/documentation/stubs/qiskit.algorithms.optimizers.OptimizerState.html

Yeah - it's rogue CSS rather than rogue Sphinx output:

The HTML there has (e.g.) Optional, and that CSS rule in the image above is incorrectly affecting it.

(Upper-casing issue filed as Qiskit/qiskit_sphinx_theme#194.)

I haven't looked at the changes yet but I just want to point out that the meta doc currently still builds with Sphinx 4.5 so that is a potential blocker. I am whether there is something preventing us to use higher versions or simply because we pinned it to ~4.0. https://github.com/Qiskit/qiskit/blob/0163282e497391910cd091ffd7c1d55dc0b5d880/requirements-dev.txt#L2

@HuangJunye: I think that pin's out of date.  It was added in Qiskit/qiskit#1470, which if I remember correctly was after we finally managed to navigate the 3.0->4.0 transition that had been very hard for us.  Since then though, Sphinx major versions have been much less breaking changes so the defensive pin likely isn't necessary.  Terra's docs are built with Sphinx 5 (I think there's a transitive pin preventing Sphinx 6 and 7 from being used), and as far as I know, there's nothing in Aer or ibmq-provider that would require the lower build.

Yeah sphinx-design is not compatible with Sphinx 6 - I tried updating before and at least that forced thing back to 5.

Ok, 9a92f3ad2 should have set the type-hint configuration to be just about the same as the status quo.  I'll leave it to somebody else in another PR if they want to cast a poll on what the docs style should be.

For this to impact our final docs we deploy, I think this needs to update qiskit-metapackage too, right?
My understanding of our setup is that qiskit-metapackage only clones Terra's docs/apidocs folder:
https://github.com/Qiskit/qiskit-metapackage/blob/20783d7c4d6a3622e2c24cfa94656d008723a5f5/docs/custom_extensions.py#L66-L84
https://github.com/Qiskit/qiskit-metapackage/blob/20783d7c4d6a3622e2c24cfa94656d008723a5f5/docs/custom_extensions.py#L57-L59
We don't use Terra's conf.py to then build those copied docs. Is that right?
If so, I'm happy to make this update to qiskit-metapackage.

Oh yeah thanks, I meant to copy this to the metapackage once this had merged, but forgot.  Done in Qiskit/qiskit-metapackage#1716.


WIP: add extra deal info to direct deals

Codecov Report

Merging #108 (cf25865) into merkle (cf25865) will not change coverage.
The diff coverage is n/a.

:exclamation: Current head cf25865 differs from pull request most recent head 0b8098d. Consider uploading reports for the commit 0b8098d to get more accurate results

@@           Coverage Diff           @@
##           merkle     #108   +/-   ##
=======================================
  Coverage   30.64%   30.64%
=======================================
  Files          20       20
  Lines         855      855
  Branches      213      213
=======================================
  Hits          262      262
  Misses        593      593

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.


Remove INC CLI from documentation

Will be added back after optimum-intel next release

The docs for this PR live here. All of your documentation changes will be reflected on that endpoint.


[ALLUXIO-3362] Implement rocks inode store

https://alluxio.atlassian.net/browse/ALLUXIO-3362

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/1296/
Test FAILed.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/1297/
Test FAILed.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/1299/
Test FAILed.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/1301/
Test FAILed.

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/Alluxio-Pull-Request-Builder/1305/
Test PASSed.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/1315/
Test FAILed.

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/Alluxio-Pull-Request-Builder/1317/
Test PASSed.


⚠ AGEG website (prod) has degraded performance

In 152a31a, AGEG website (prod) (https://www.ageg.ca/) experienced degraded performance:

HTTP code: 200
Response time: 2296 ms

Resolved: AGEG website (prod) performance has improved in 97aa488.


Update Gonzalo's email to personal account

As discussed with @JDutil I'm providing this update to check if I still have access to maintain the gem. As it's open source and I built 90% of it I'd like to keep collaborating on this gem.

@HQ063 are you able to merge?


mobile: don't configure xDS config by default

~And disable google_grpc by default for all builds, which would have caught this earlier.~ This PR no longer does this, but it's probably something that should be done to prevent these runtime errors from even being reachable.
Configuring xDS is an advanced feature and shouldn't be compiled in by default in order to reduce binary size.
Before this change, using the Swift/Kotlin APIs with engine builder defaults would cause this uncaught runtime error:

[Envoy] error generating bootstrap: google_grpc must be enabled in bazel to use ADS

Commit Message:
Additional Description:
Risk Level: Low
Testing: Tested with example apps and existing unit tests
Docs Changes: None
Release Notes: None
Platform Specific Features:
[Optional Runtime guard:]
[Optional Fixes #Issue]
[Optional Fixes commit #PR or SHA]
[Optional Deprecated:]
[Optional API Considerations:]

/assign @Augustyniak
I've also asked @caschoener to review since this is a follow-up to https://github.com/envoyproxy/envoy/pull/25638

Ah, sorry I missed this.  This is arguably an incorrect error message - we only actually enable XDS things if setAggregatedDiscoveryService and addRtdsLayer are called with non-empty strings.  Whereas the swift and kotlin APIs are just structured to call all builder APIs but with empty default params.
In other words a simpler way to fix this would be to change it from
  throw std::runtime_error("google_grpc must be enabled in bazel to use ADS");
#endif```

to

```#ifndef ENVOY_GOOGLE_GRPC
  if (!ads_address_.empty()) {
  throw std::runtime_error("google_grpc must be enabled in bazel to use ADS");
  }
#endif```

Either way is fine though.  I mostly went the route I did to be consistent with how the files were previously structured

#ifndef ENVOY_GOOGLE_GRPC
  if (!ads_address_.empty()) {
  throw std::runtime_error("google_grpc must be enabled in bazel to use ADS");
  }
#endif

Sure that would be fine too, but I think ideally we wouldn't even allow these errors to be reachable.
Similar to ENVOY_MOBILE_REQUEST_COMPRESSION where those APIs aren't even built at compile time if that isn't defined.


SSB Server crash when using blobs.size()

Getting this with ssb-server master + ssb-ws latest. This is happening when connecting to ws:/localhost:8989~shs:pPnZTDg8XedTXwgRqjMa5CGmDTwBTSuMzdqlAvNI8ck= with https://github.com/arj03/ssb-browser-demo. No blobs are loading client side either, so could be something to do with the frontend.
/home/tim/projects/ssb-server/node_modules/multiblob-http/index.js:62
      blobs.size(hash, function (err, size) {
            ^

TypeError: Cannot read property 'size' of undefined
    at /home/tim/projects/ssb-server/node_modules/multiblob-http/index.js:62:13
    at /home/tim/projects/ssb-server/node_modules/ssb-ws/blobs.js:36:15
    at /home/tim/projects/ssb-server/node_modules/ssb-blobs/inject.js:292:11
    at next (/home/tim/projects/ssb-server/node_modules/ssb-blobs/inject.js:170:7)
    at /home/tim/projects/ssb-server/node_modules/ssb-blobs/inject.js:159:13
    at /home/tim/projects/ssb-server/node_modules/multiblob/index.js:124:20
    at continuation (/home/tim/projects/ssb-server/node_modules/continuable-list/index.js:24:25)
    at /home/tim/projects/ssb-server/node_modules/multiblob/index.js:94:9
    at done (/home/tim/projects/ssb-server/node_modules/multiblob/util.js:88:38)
    at FSReqWrap.oncomplete (fs.js:154:5)

Investigating root cause now.

I didn't have ssb-blobs plugin enabled. I thought that would have been auto-added with something I installed or default server config. Fixed with changing secret-stack setup to:
.use(require('ssb-blobs'))
.use(require('ssb-ws'))

Could use a better error message on load saying ssb-blobs is required and isn't enabled. Can close for now.


[Chat] Updated Docs for File Sharing

What
Update docs for file sharing
Why
address issue in MSDoc where a link is invalid
How Tested
storybook
Process & policy checklist

[X] I have updated the project documentation to reflect my changes if necessary.
[X] I have read the CONTRIBUTING documentation.

Is this a breaking change?

[ ] This change causes current functionality to break.

Tested. LGTM


Insufficient funds for gas * price + value

JsonRpcError: Insufficient funds for gas * price + value
    at JsonRpcError.ExtendableBuiltin (file:///C:/Users/sathe/AppData/Local/Programs/EmeraldWallet/resources/app.asar/app/index.js:23949:30)
    at new JsonRpcError (file:///C:/Users/sathe/AppData/Local/Programs/EmeraldWallet/resources/app.asar/app/index.js:23978:116)
    at file:///C:/Users/sathe/AppData/Local/Programs/EmeraldWallet/resources/app.asar/app/index.js:24015:19
    at <anonymous>

duplicate of #750


Speed: normalized by batch size?

Hi,
Are the speed numbers divided by the mini-batch size ( = 16)?
From what I can see (https://github.com/jcjohnson/cnn-benchmarks/blob/master/cnn_benchmark.lua#L46), it is not normalized. Is it correct?
Thanks,
Vadim

No it is the speed for the entire mini batch
On Monday, October 10, 2016, Vadim Kantorov<EMAIL_ADDRESS>wrote:

Hi,
Are the speed numbers divided by the mini-batch size ( = 16)?
Thanks,
Vadim
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/jcjohnson/cnn-benchmarks/issues/13, or mute the
thread
https://github.com/notifications/unsubscribe-auth/ACl7-kt_94CLdMfw43wDLw9azuz_GX-eks5qykYmgaJpZM4KSme7
.

Thanks for a quick response. A note in the main text about it wouldn't hurt though. All in all, very nice work, thanks for making it available!

Glad I found this issue. I was wondering the same thing.


close(), arrow()

Constantly finding myself recreating these assets over and over. So nice to have them in pure css. Should we add?
http://codepen.io/dbox/pen/bVGBow?editors=110
I have mixin super close. Just needs 1 little tweak.
(Obviously all this will happen after #192)

Updated. Totally scalable now. :dancers:

This is amazing. 100% yes, this would save me tons of time. These looks great, and the flexibility on them is fantastic.

I suppose we could use it to add a fancy option to 'raquo()' too:)

one more.... icon-menu():
http://codepen.io/dbox/pen/bVGBow
I don't really think we should add too many more, but you KNOW you're always recreating this.

So this one is a good idea, but as you resize the screen the lines shift around and mis-align :confused:

Yikes, sure enough. Odd.

Daniel Box
615.414.9651 tel:615.414.9651
<EMAIL_ADDRESS><EMAIL_ADDRESS>@dbox http://twitter.com/dbox

On Oct 6, 2015, at 4:13 PM, Jeff Escalante<EMAIL_ADDRESS>wrote:
So this one is a good idea, but as you resize the screen the lines shift around and mis-align
—
Reply to this email directly or view it on GitHub https://github.com/jenius/axis/issues/213#issuecomment-146003510.

I think I didn't notice because have been trying out new Safari (and it doesn't do it.)
I'll fix it up.

fixed :bug:

:+1: lgtm

Gunna nix the menu part. Wasn't coded the best.
Something like this is probably better anyway: https://github.com/jorenvanhee/sass-burger
I'll get arrows into docs.

:+1:


Linux commands echo and printf should not output the trailing newline when we run them in PowerShell

When we run echo -n and printf in bash shell, they don't output the trailing newline and piping the output to base64 gives the encoded string for the actual input string "foo" without including the trailing newline. If we do the same in PowerShell shell, the trailing newline is part of the output and we get a different encoded string.
Steps to reproduce
$ # a trailing newline is part of the output
$ echo "foo" | base64
Zm9vCg==

$ # a trailing newline is not part of the output
$ echo -n "foo" | base64
Zm9v

$ # a trailing newline is not part of the output
$ printf "foo" | base64
Zm9v

$ pwsh-preview

PS> remove-alias echo

PS> gcm echo

CommandType     Name     Version    Source
-----------     ----     -------    ------
Application     echo     <IP_ADDRESS>    /bin/echo

$ # a trailing newline is part of the output (EXPECTED)
PS> echo "foo" | base64
Zm9vCg==

$ # a trailing newline is part of the output (UNEXPECTED)
PS> echo -n "foo" | base64
Zm9vCg==

$ # a trailing newline is part of the output (UNEXPECTED)
PS> printf "foo" | base64
Zm9vCg==

$ # a proof that a trailing newline is part of the output
PS> echo -n "foo" | base64 | base64 -d | od -c
0000000   f   o   o  \n
0000004

$ # a proof that a trailing newline is part of the output
PS> printf "foo" | base64 | base64 -d | od -c
0000000   f   o   o  \n
0000004

Expected behavior
PS> remove-alias echo
PS> echo "foo" | base64
Zm9vCg==
PS> echo -n "foo" | base64
Zm9v
PS> printf "foo" | base64
Zm9v

Actual behavior
PS> echo "foo" | base64
Zm9vCg==
PS> echo -n "foo" | base64
Zm9vCg==
PS> printf "foo" | base64
Zm9vCg==

Environment data

> $PSVersionTable
Name                           Value
----                           -----
PSVersion                      6.1.0-preview.4
PSEdition                      Core
GitCommitId                    6.1.0-preview.4
OS                             Linux 4.4.0-17134-M
Platform                       Unix
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0
PSRemotingProtocolVersion      2.3
SerializationVersion           <IP_ADDRESS>
WSManStackVersion              3.0

Powershell and bash are not 100% compatible with external commands.
To be 100% compatible, use the following command:
Q: How do I embed a shell command in a .ps1 script?
answer:
$bashcmd =
@'
Echo 'I am the bash command'
Echo 'can have single quotes in the command'
Echo "can have double quotes in the command"
Echo 'If you need to parse the variable, use this bracket, pay attention to the end of the line must be wrapped '
Echo '@\"'
Echo '$a'
Echo '\"@'
'@
/usr/bin/bash -c $bashcmd
#Need to be escaping, a little bad

or
@'
Echo 'I am the bash command'
Echo 'can have single quotes in the command'
Echo "can have double quotes in the command"
Echo 'If you need to parse the variable, use this bracket, pay attention to the end of the line must be wrapped '
Echo '@"'
Echo '$a'
Echo '"@'
'@ | /usr/bin/bash
#No need to escape, recommend

In PowerShell "echo" is an alias for "Write-Output". We have request to implement -Nonewline switch.

This issue is all about  external Linux commands. In repro steps, I remove echo alias, and later use echo Linux command. The problem also applies to printf command.


[request] Zap history

Occasionally I like to start fresh, I use a zap script to clean stuff out.
> ../clipmenu.user/line_cache && rm ../clipmenu.user/[1-9]*

However could a --zap option be added to clipmenu?

Thank you!


Add test for issue causing the response to remain open and never finish

Hi!
I've found an issue after upgrading to hapi-authorization 3.0.0. If you just throw an exception in a Hapi handler, then the response stays open and hangs forever.
I managed to create a test reproducing the problem here, to me it looks like the solution would be to avoid the global try/catch in onPreHandler or catching the specific errors thrown by hapi-authorization itself and not every exception. But not sure if that would be the best solution, probably you know better than me. Thanks for your help.

I think I've found a solution, I'd appreciate if you could give a look at this.
Thanks.

Version 3.0.1 published to npm.


3DKinematic move_and_slide not working under some conditions

This issue seems to be related to #18245 but I cannot re-open it.
Godot version:

3.0.2
OS/device including version:

Arch Linux (rolling release)
Issue description:

It seems I have the same issue as #18245 but I cannot find the infinite_inertia field for 3D (it seems to only exist for RigidBody2D in the test_motion() function. I have a MWE where changing the scale of the floor can toggle the issue on and off. Apparently the body is dropping into the floor (slightly negative y-value) which causes it to indefinitely fall (vertical velocity increases). The strange thing is that the position is not updated even though the velocity is ever increasing. It seems in this case move_and_slide() simply does nothing at all.
Here is the working example. The box is dropping onto the ground and can be moved normally:

Here is the broken example. Except for the floor being scaled bigger in the XZ-plane there are no changes in the example. The box is dropping into the ground and cannot be moved.

Steps to reproduce:
The change I made is in the World scene for the Floor node using scale = (20, 1, 20) for example 1 and scale = (128, 1, 128) for example 2. Please check the MWE project below.
Minimal reproduction project:

Test3D.tar.gz

cc @AndreaCatania

The blue floor is using a plane shape? Because the plane shape is not meant to be walcable, It's meant to be a world margin. Try to use all other shapes

The blue floor uses a box shape with height 1. You can check it in the project for yourself if you want. Do you mean I should still use other shapes? From my understanding a box shape should be fine for walking as it is very commonly used as in-game geometry.

Yes box is fine, I'll check it

Do you have an estimate when you will have the time to check it? I don't mean to be impatient, I am just asking because currently the development of my project is on hold because of this (character getting stuck is breaking the game). If you don't have the time right now, it's okay but it would be good to have an estimate for my own planning. Thanks!

I've checked it yesterday and I've noticed that the scale of static body is the problem. I've also noticed that this problem happens only with kinematic cube shape.
I need more time to investigate how to fix this issue, in the main time you can use a scale like this 128 10 128 to avoid it.
I let you know soon about the fix

https://github.com/bulletphysics/bullet3/issues/1703 was fixed (and Bullet in Godot updated since then), so I'll assume this bug has been resolved since. Please comment if you can still reproduce this bug.


Ensembl release 85

Bumping the max release to 85, fixes https://github.com/hammerlab/pyensembl/issues/161

This change is

Coverage remained the same at 81.419% when pulling 93310123c75d8143ba3cd830faf11cd315d9d9f6 on ensembl85 into 44b60df2a3afcb4caef5c136e32e95ec807132bc on master.


SEL dataset and preprocessed data missing？

hi I found that SEL dataset and preprocessed data can't found in google drive.
Could u upload your customer dataset again？ thx

Thank you for your interest. We fixed it!

Thank you for your interest. We fixed it!

thx  a lot. it could be work now.


Create banner where we are open Thursday the 19th

Banner on the homepage to tell we are open

Thursday the 19th December
10-14

Done! On the 19th these will be reversed!


How can i add price line to spline to track the latest price?  Like candles chart

I know I can draw it by overlay, but I want to display it in the price Range bar, but I don't know how to operate it.

This, https://github.com/C451/trading-vue-js/blob/master/docs/api/SHADERS.md
And this, https://github.com/C451/trading-vue-js/blob/master/src/components/overlays/Candles.vue#L19

It turned out that I didn't read the documents carefully, and my problem was solved, although there was a performance problem when there was a lot of data.  Thank you for your patience and help

Your chart looks great. Yeah, performance needs to be improved.

@activeliang if for some reason you'd like to open source your overlays, you are welcome here: https://github.com/tvjsx/tvjs-overlays
The idea is to create big library of overlays for tvjs powered by the community.


B-21667 I-13567 Update UB shipment label on MTO page - INT

Agility issue
Agility ticket
Summary
Needed to add UB shipment to the list of shipment section labels. Went ahead and updated it for some missing shipment types as well.
Before:

After:

508 Compliance:

Warnings

:warning:
This PR does not include changes to unit tests, even though it affects app code.

  Generated by :no_entry_sign: dangerJS against 55a764ff06d6d0d8f79bf8f85a17584d80b16e27


--THROWAWAY PR-- Regen AWS docs for testing

@cnunciato here's that PR I was telling you about earlier.


Workflow collector changes -working version

This code also includes changes to get details for workflow build widget

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