feat(curriculum): add animations to block 4.2 of the English Curriculum

Checklist:

[X] I have read and followed the contribution guidelines.
[X] I have read and followed the how to open a pull request guide.
[X] My pull request targets the main branch of freeCodeCamp.
[X] I have tested these changes either locally on my machine, or GitPod.

This is looking good @DanielRosa74. The playback seems pretty consistent. I am still getting quite a few steps where the audio gets cut off a little early. Here's a list of the task numbers:
15-19,
23-24, 26, 30, 36-37, 39-43, 46-47, 50-53, 58, 68-70, 72-75, 94, 104-105
I used Chrome for testing. Do you want to take a quick look at some of those and see if you are seeing the same thing? And maybe make some adjustments. They could be off a little from adjustments you made because of the inconsistencies that were present from before.

Changes made. The sentences were cutting off in those places indicated. This should fix them.

Looks like the tests need to be updated to accept the new scenes.

Solved.


Change icon on mention.

Operating System:

[x] Windows
[x] Linux/Ubutnu
[x] macOS

Clear steps to reproduce the issue:
Get mentioned by anyone. See the taskbar icon and org icon.

Suggestions:
We can change color of icon to red like slack shows the red dot on mention. Similarly, for org icon in left sidebar.

@zulipbot claim --force

We already show the red dot over the dock icon if there is a PM count in macOS.

There is WIP PR #385 which updates the tray icon on PM (same as favicons).
Currently, we don't have a proper method to get the PM count. We have implemented the electron bridge (it passes the data from the web app to electron) in https://github.com/zulip/zulip/pull/8520 and with #428 we will have the detailed unread counts (mention, PM etc).

@zulipbot abandon


Add future package

Issue: As a result of usnistgov/fipy#645 will require the future package.
Be sure to update recipe when it is released.

Fixed by 9bf9607e and 77f9424d


List rebuild leads to creating new Stream with Stream has already been listened to Exception

I have a ListView that looks like this:
    ListView(
      children: <Widget>[
        _buildStream(),
        // Other Childs
      ],
    ),

    _buildStreamn() {
      return StreamBuilder(
        stream: Stream.periodic(Duration(seconds: 1)),
        builder: (BuildContext context, AsyncSnapshot snapshot) {
          return Text('some Text that updates every second!');
        }
      );
    }

The problem is, when I scroll to the end of my List I get a Bad state: Stream has already been listened to. I think the List rebuilds at some point but the it should just call _buildStream() again, which would create a new Stream, so there shouldn't be a already listend to Stream.
Full Exception:
I/flutter (  844): ══╡ EXCEPTION CAUGHT BY WIDGETS LIBRARY ╞═══════════════════════════════════════════════════════════
I/flutter (  844): The following StateError was thrown building NotificationListener<KeepAliveNotification>:
I/flutter (  844): Bad state: Stream has already been listened to.
I/flutter (  844):
I/flutter (  844): When the exception was thrown, this was the stack:
I/flutter (  844): #3      _StreamBuilderBaseState._subscribe (package:flutter/src/widgets/async.dart:135:37)
I/flutter (  844): #4      _StreamBuilderBaseState.initState (package:flutter/src/widgets/async.dart:109:5)
I/flutter (  844): #5      StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:3830:58)
I/flutter (  844): #6      ComponentElement.mount (package:flutter/src/widgets/framework.dart:3696:5)
I/flutter (  844): #7      Element.inflateWidget (package:flutter/src/widgets/framework.dart:2950:14)
I/flutter (  844): #8      Element.updateChild (package:flutter/src/widgets/framework.dart:2753:12)
I/flutter (  844): #9      SingleChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:4860:14)
I/flutter (  844): #10     Element.inflateWidget (package:flutter/src/widgets/framework.dart:2950:14)
I/flutter (  844): #11     Element.updateChild (package:flutter/src/widgets/framework.dart:2753:12)
I/flutter (  844): #12     SingleChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:4860:14)
I/flutter (  844): #13     Element.inflateWidget (package:flutter/src/widgets/framework.dart:2950:14)
I/flutter (  844): #14     Element.updateChild (package:flutter/src/widgets/framework.dart:2753:12)
I/flutter (  844): #15     ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:3732:16)
I/flutter (  844): #16     Element.rebuild (package:flutter/src/widgets/framework.dart:3547:5)
I/flutter (  844): #17     ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:3701:5)
I/flutter (  844): #18     ComponentElement.mount (package:flutter/src/widgets/framework.dart:3696:5)
I/flutter (  844): #19     Element.inflateWidget (package:flutter/src/widgets/framework.dart:2950:14)
I/flutter (  844): #20     Element.updateChild (package:flutter/src/widgets/framework.dart:2753:12)
I/flutter (  844): #21     ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:3732:16)
I/flutter (  844): #22     Element.rebuild (package:flutter/src/widgets/framework.dart:3547:5)
I/flutter (  844): #23     ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:3701:5)
I/flutter (  844): #24     ComponentElement.mount (package:flutter/src/widgets/framework.dart:3696:5)
I/flutter (  844): #25     ParentDataElement.mount (package:flutter/src/widgets/framework.dart:4047:11)
I/flutter (  844): #26     Element.inflateWidget (package:flutter/src/widgets/framework.dart:2950:14)
I/flutter (  844): #27     Element.updateChild (package:flutter/src/widgets/framework.dart:2753:12)
I/flutter (  844): #28     ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:3732:16)
I/flutter (  844): #29     Element.rebuild (package:flutter/src/widgets/framework.dart:3547:5)
I/flutter (  844): #30     ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:3701:5)
I/flutter (  844): #31     StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:3848:11)
I/flutter (  844): #32     ComponentElement.mount (package:flutter/src/widgets/framework.dart:3696:5)
I/flutter (  844): #33     Element.inflateWidget (package:flutter/src/widgets/framework.dart:2950:14)
I/flutter (  844): #34     Element.updateChild (package:flutter/src/widgets/framework.dart:2753:12)
I/flutter (  844): #35     SliverMultiBoxAdaptorElement.updateChild (package:flutter/src/widgets/sliver.dart:1028:36)
I/flutter (  844): #36     SliverMultiBoxAdaptorElement.createChild.<anonymous closure> (package:flutter/src/widgets/sliver.dart:1013:20)
I/flutter (  844): #37     BuildOwner.buildScope (package:flutter/src/widgets/framework.dart:2266:19)
I/flutter (  844): #38     SliverMultiBoxAdaptorElement.createChild (package:flutter/src/widgets/sliver.dart:1006:11)
I/flutter (  844): #38     SliverMultiBoxAdaptorElement.createChild (package:flutter/src/widgets/sliver.dart:1006:11)
I/flutter (  844): #39     RenderSliverMultiBoxAdaptor._createOrObtainChild.<anonymous closure> (package:flutter/src/rendering/sliver_multi_box_adaptor.dart:274:23)
I/flutter (  844): #40     RenderObject.invokeLayoutCallback.<anonymous closure> (package:flutter/src/rendering/object.dart:1730:58)
I/flutter (  844): #41     PipelineOwner._enableMutationsToDirtySubtrees (package:flutter/src/rendering/object.dart:799:15)
I/flutter (  844): #42     RenderObject.invokeLayoutCallback (package:flutter/src/rendering/object.dart:1730:13)
I/flutter (  844): #43     RenderSliverMultiBoxAdaptor._createOrObtainChild (package:flutter/src/rendering/sliver_multi_box_adaptor.dart:263:5)
I/flutter (  844): #44     RenderSliverMultiBoxAdaptor.insertAndLayoutLeadingChild (package:flutter/src/rendering/sliver_multi_box_adaptor.dart:372:5)
I/flutter (  844): #45     RenderSliverList.performLayout (package:flutter/src/rendering/sliver_list.dart:99:29)
I/flutter (  844): #46     RenderObject.layout (package:flutter/src/rendering/object.dart:1634:7)
I/flutter (  844): #47     RenderSliverPadding.performLayout (package:flutter/src/rendering/sliver_padding.dart:182:11)
I/flutter (  844): #48     RenderObject.layout (package:flutter/src/rendering/object.dart:1634:7)
I/flutter (  844): #49     RenderViewportBase.layoutChildSequence (package:flutter/src/rendering/viewport.dart:405:13)
I/flutter (  844): #50     RenderViewport._attemptLayout (package:flutter/src/rendering/viewport.dart:1316:12)
I/flutter (  844): #51     RenderViewport.performLayout (package:flutter/src/rendering/viewport.dart:1234:20)
I/flutter (  844): #52     RenderObject._layoutWithoutResize (package:flutter/src/rendering/object.dart:1509:7)
I/flutter (  844): #53     PipelineOwner.flushLayout (package:flutter/src/rendering/object.dart:768:18)
I/flutter (  844): #54     _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding&PaintingBinding&SemanticsBinding&RendererBinding.drawFrame (package:flutter/src/rendering/binding.dart:281:19)
I/flutter (  844): #55     _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding&PaintingBinding&SemanticsBinding&RendererBinding&WidgetsBinding.drawFrame (package:flutter/src/widgets/binding.dart:677:13)
I/flutter (  844): #56     _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding&PaintingBinding&SemanticsBinding&RendererBinding._handlePersistentFrameCallback (package:flutter/src/rendering/binding.dart:219:5)
I/flutter (  844): #57     _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding._invokeFrameCallback (package:flutter/src/scheduler/binding.dart:990:15)
I/flutter (  844): #58     _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding.handleDrawFrame (package:flutter/src/scheduler/binding.dart:930:9)
I/flutter (  844): #59     _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding._handleDrawFrame (package:flutter/src/scheduler/binding.dart:842:5)
I/flutter (  844): #60     _invoke (dart:ui/hooks.dart:154:13)
I/flutter (  844): #61     _drawFrame (dart:ui/hooks.dart:143:3)
I/flutter (  844): (elided 3 frames from package dart:async)
I/flutter (  844): ════════════════════════════════════════════════════════════════════════════════════════════════════

[✓] Flutter (Channel stable, v1.0.0, on Mac OS X 10.14.3 18D109, locale de-DE)
    • Flutter version 1.0.0 at /Users/jonas/flutter
    • Framework revision 5391447fae (3 months ago), 2018-11-29 19:41:26 -0800
    • Engine revision 7375a0f414
    • Dart version 2.1.0 (build 2.1.0-dev.9.4 f9ebf21297)

[✓] Android toolchain - develop for Android devices (Android SDK 28.0.3)
    • Android SDK at /Users/jonas/Library/Android/sdk
    • Android NDK location not configured (optional; useful for native profiling support)
    • Platform android-28, build-tools 28.0.3
    • ANDROID_HOME = /Users/jonas/Library/Android/sdk
    • Java binary at: /Library/Java/JavaVirtualMachines/jdk1.8.0_192.jdk/Contents/Home/bin/java
    • Java version Java(TM) SE Runtime Environment (build 1.8.0_192-b12)
    • All Android licenses accepted.

[✓] iOS toolchain - develop for iOS devices (Xcode 10.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 10.1, Build version 10B61
    • ios-deploy 1.9.4
    • CocoaPods version 1.5.3

[✓] Android Studio (version 3.2)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin version 31.3.1
    • Dart plugin version 181.5656
    • Java version OpenJDK Runtime Environment (build 1.8.0_152-release-1136-b06)

[!] Android Studio
    • Android Studio at /Applications/Android/Contents
    ✗ Flutter plugin not installed; this adds Flutter specific functionality.
    ✗ Dart plugin not installed; this adds Dart specific functionality.
    ✗ Android Studio not found at /Applications/Android/Contents
    • Try updating or re-installing Android Studio.

[!] IntelliJ IDEA Community Edition (version 2018.1.2)
    • IntelliJ at /Applications/IntelliJ IDEA CE.app
    ✗ Flutter plugin not installed; this adds Flutter specific functionality.
    ✗ Dart plugin not installed; this adds Dart specific functionality.
    • For information about installing plugins, see
      https://flutter.io/intellij-setup/#installing-the-plugins

[✓] Connected device (1 available)
    • Android SDK built for x86 • emulator-5554 • android-x86 • Android 8.1.0 (API 27) (emulator)

! Doctor found issues in 2 categories.

There is a workaround for this issue?

Stream.periodic will create a single subscription stream, which can't be subscribed to more than once. In this case, a ListView child may be getting offloaded when you scroll to the end, and scrolling back causes it to try to resubscribe without re-creating the stream.
I would recommend only using broadcast streams, for example to convert the period stream into one:
Stream.periodic(Duration(seconds: 1)). asBroadcastStream()

hi jonahwilliams
thanks for your recommendation.
I have solved that according to your recommended method

Just wanted to say, another way of fixing this issue is by taking out the streambuilder, making a stateless widget, and putting that streambuilder in there. That fixed it for me :).


Statistics (aggregate per day (run/lift) - Total time skiing (moving)

Describe briefly your feature.
Create a function to determine the total time skiing and create a UI element for displaying this statistic.
Describe the solution you'd like
From the outcome of Group #4-6  -  Statistics (service functions, Ski statistics), we will have distance skied, average speed, so for calculating time, we can divide distance by speed.
Describe alternatives you've considered
There is no alternative for this.

Update:

Issue #69 is dependant on Issue #55.
The UI part is working, once we have the data from Group 6 the UI part will display the appropriate values.
This issue cannot be closed, due to dependancy on Group 6 #55.
We have written the functionality for total duration skiing and updated the UI part which is the primary goal of our group.

I updated the feature after getting the functionality from group 6 and I have merged the following PR:
https://github.com/rilling/OpenTracks-Winter-SOEN-6431_2024/pull/206


AMBARI-24340 : AMS Migration tools should auto-detect whitelist file.

What changes were proposed in this pull request?
Whitelist file should not be a mandatory parameter for AMS data migration. The default file should be used.
How was this patch tested?
Manually tested.

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/Ambari-Github-PullRequest-Builder/3248/
Test PASSed.


Add opcode description table containing an opcode's name, name and possible type of the opcode's arguments

Merged as part of #482.


Add a customized runtime(include action and schema) sample

Describe the bug

Synced with Brenda and Dong, here is our proposal.
We can create a sample(bot template) folder with the customization part of the runtime.  Here is the bot looks like:
bot
  /bot.dialog
  /language-generation
  /language-understanding
  /dialogs
     /custmozedDialogs
  /runtime
     /customizedCode
  /schemas
     customized.schema

With all the customization part in the template, when user create a bot from that template, we will help user copy all the assets above, and user can configure use custom schema, we will help user merge the default bot runtime with the customized code. then we can directly run it. We need to explain all the details in docs.
Here are the actions items:

[ ] create a sample for customized action and schema. -Lu
[ ] update the plugin to enable the merge of default runtime with customized part. -Wenyi
[ ] design the name, description and icon of the new template -Marc?
[ ] docs -Yan

@cwhitten and @benbrown, please help to review the above proposal.
Version

Browser

[ ] Chrome
[ ] Safari
[ ] Firefox
[ ] Edge

OS

[ ] macOS
[ ] Windows
[ ] Ubuntu

To Reproduce
Steps to reproduce the behavior:

Go to '...'
Click on '....'
Scroll down to '....'
See error

Expected behavior

Screenshots

Additional context

A few thoughts:

Bundling code in the templates is not currently well supported. Seems this would require the bot to start out of the box with the ejected runtime.
I don't think it is a good idea to introduce some way to magically merge codebases. If this is not going to run the normal "managed" runtime, it should be ejected.
If this is important functionality to demonstrate to our developers, why hide it in a sample? Why not make this part of the default runtime template? If the point is showing how to build and expose custom actions, the sample custom action can be something simple, like a console.log type action.

A few thoughts:

Bundling code in the templates is not currently well supported. Seems this would require the bot to start out of the box with the ejected runtime.
I don't think it is a good idea to introduce some way to magically merge codebases. If this is not going to run the normal "managed" runtime, it should be ejected.
If this is important functionality to demonstrate to our developers, why hide it in a sample? Why not make this part of the default runtime template? If the point is showing how to build and expose custom actions, the sample custom action can be something simple, like a console.log type action.

We just discussed this in today's standup, the intended user experience is for user, just choose a "customized schema sample" and it just work. That's the first thing to clarify.
So, in order to make this experience work, what's required would be

update the ejection to be merge instead of "replace"
trigger an auto-ejection after creation. This is one is tricky, because our ejection requiring a choice for a list of runtime available, auto doing that and hard coding a version after creation sounds very weird.

To achieve the similar user experience, one option, i would recommend, probably this is @benbrown referred by "hiding", we can just make it into the CSharp project we shipped, with code + schema, so, user just need an ejection (a button click), and everything is put in the right place. The "sideeffects" of this, is any ejection will bring this for any samples, which is fine to me, i mean, once they eject, one more action is OK.
Another option, is do nothing in code, just doc, which I think it's acceptable for a developer, because worse case is just ejection + 2 file download and move.

We talked about it tonight--everyone is in agreement that adding a boilerplate custom action to the base runtime template is a good idea. it's much easier and we think a better all-around customer experience.
Great ideas!


SVGCanvas animation doesn't work with if statement

It seems like if you use an if statement within an SVGCanvas animation, it doesn't work as expected.
This function is a small reproduction of the problem:
export const createShapes = ({ space }) => {
  const state = {
    isPlaying: true
  };
  const form = space.getForm();

  const createPlayIcon = (x, y) =>
    Triangle.fromCenter(new Pt(x, y), 50).rotate2D(33);
  const createStopIcon = (x, y) => Rectangle.fromCenter(new Pt(x, y), 70);

  space.add({
    action: (type) => {
      if (type === "up") {
        state.isPlaying = !state.isPlaying;
      }
    }
  });

  // Works
  space.add(function () {
    // Required for SVGForm
    form.scope && form.scope(this);

    const polygon1 = state.isPlaying
      ? createPlayIcon(150, 150)
      : Rectangle.polygon(createStopIcon(100, 100));
    form.fill("#fff").polygon(polygon1);
  });

  // Doesn't work in SVGCanvas
  space.add(function () {
    // Required for SVGForm
    form.scope && form.scope(this);

    if (state.isPlaying) {
      form.fill("#fff").polygon(createPlayIcon(300, 150));
    } else {
      form.fill("#fff").rect(createStopIcon(250, 100));
    }
  });

  return state;
};

If you pass in a CanvasSpace for space, it works as expected, but when you pass in a SVGSpace, it only renders the play button, even if state.isPlaying changes.
You can see it running in https://codesandbox.io/s/ptsjs-svg-canvas-bug-m7f36
I'm guessing it's because of something funny going on with form.scope(this)?

Hi @taktran , I tried a simplified version of your code and it seems to work like this:
Pts.namespace( this );
var space = new SVGSpace("#pt").setup({bgcolor: "#90f", resize: true });
var form = space.getForm();

const state = { isPlaying: true };

space.add({

  animate: function (time, ftime) {
    form.scope && form.scope(this);

    if (state.isPlaying) {
      form.fill("#fff").point(space.pointer, 50);
    } else {
      form.fill("#000").point(space.pointer, 50);
    }
  },

  action: function (type) {
    if (type === "up") {
      state.isPlaying = !state.isPlaying;
    }
  }

});

A couple of suggestions:

In your code, you're making 3 space.add(...) calls, which means there'll be 3 players created. Not sure if it's what you want to do -- consider using only one space.add(...) like the above.
Try using normal callback like action: function() {...} instead of arrow function action: () => {...}

The SVG implementation in Pts is in early-stage and missing a lot of features. Please continue to send feedbacks and file issues :) Thanks!

Hi @williamngan , thanks for looking into it. Really ❤  the API of pts.js btw 😄
I'm trying to figure out how to work with pts.js without using the global namespace. Is Pts.namespace built to work with anything other than window? Is this the code that sets up the namespace?
I think there is something that I'm not understanding about the difference between:

Using the same form creation method (ie, .polygon)

const polygon1 = state.isPlaying
      ? createPlayIcon(150, 150)
      : Rectangle.polygon(createStopIcon(100, 100));
form.fill("#fff").polygon(polygon1);

// or
if (state.isPlaying) {
  form.fill("#fff").polygon(createPlayIcon(150, 150));
} else {
  form.fill("#fff").polygon(Rectangle.polygon(createStopIcon(100, 100)));
}

Using different form creation methods (ie, '.polygon' and '.rect')

if (state.isPlaying) {
  form.fill("#fff").polygon(createPlayIcon(300, 150));
} else {
  form.fill("#fff").rect(createStopIcon(250, 100));
}

An updated of the code example: https://codesandbox.io/s/ptsjs-svg-canvas-bug-2-or0wu?file=/src/create-shapes.js

consider using only one space.add(...)

Cool, it was mainly for demonstrative purposes, but it seems like I should restructure my code so that there are data transformation steps, and then have one player for the rendering step

Try using normal callback

Oh, I thought this was only relevant to the animate property. It doesn't seem to change anything with action - maybe because there is no use of this?

Hi @taktran , I'm sorry that I totally missed your comment and late to respond.
I think there's a bug somewhere in the SVG scope that seems to clash with if/else statement. I'm going to mark this as a bug and investigate further. However, I am very busy these days, it might take me a while to get to it.
Re your question on "namespace", it's mostly a convenient method to "inject" Pts to a current scope like windows (or any functional scope). It's used for quick scripting. If you're using babel etc, you don't need it -- just use import statements instead.
Re your question on "form": The examples you give should be equivalent. "form" is just to visualize the "points" as rectangles,
circles, etc. The bug in SVG might have confused you. Sorry. I would suggest using the canvas version as reference since it's way more stable.
Thank you for the bug report and detailed discussion. Cheers!


React Native Wrapper: problem with use_frameworks!

use_frameworks! in ios/Podfile causes buildtime errors with aries-askar pod:
'ariesAskar.h' file not found with <angled> include, use "quotes" instead

We need use_frameworks! for other dependencies

I agree this is a problem. I got around it by using an older version of the dependency I needed to use. Which obviously isn't ideal. This should be looked at.

@jamshale - posting here because it may be of help to you.
I was able to mitigate the problem above by adding the following to my Podfile:
pre_install do |installer|
    installer.pod_targets.each do |pod|
      if pod.name&.eql?('aries-askar')|| pod.name&.eql?('indy-vdr')
        def pod.build_type;
          Pod::BuildType.static_library
        end
      end
    end
  end
...
  post_install do |installer|
    ...

    installer.pods_project.targets.each do |target|
      ...
      if (target.name&.eql?("aries-askar") || target.name&.eql?("indy-vdr"))
        target.build_configurations.each do |config|
          config.build_settings["HEADER_SEARCH_PATHS"] = "$(inherited) ${PODS_ROOT}/Headers/Public/**"
          config.build_settings["MACH_O_TYPE"] = "staticlib"
        end
      end

This is necessary for both aries-askar and indy-vdr.
I was having some trouble debugging the app with the static libraries, but I haven't had enough capacity to investigate this further.
Hope this helps someone.

IS this something we can add to the podspecs for these libraries so it works out of the box?

Good question, I'll investigate.

It is a specific compiler issue. Angled brackets are "reserved" for system dependencies and quotes for local dependencies. I think we can just change the < and > to quotes and it should be fine.


chore(next): force esbuild jsx transform

[!WARNING]
This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
Learn more

#416  👈
#413 : 2 other dependent PRs (#414 , #415 )
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @hi-ogawa and the rest of your teammates on  Graphite


[EPIC] Integration with Qiskit Runtime service

What is the expected behavior?
Implement loosely coupled integration of runtime service into serverless.
User story
As serverless user I want each serverless job keep track of spawned IBM runtime jobs, so that I can associate runtime and serverless jobs and when I cancel my serverless jobs all related runtime jobs cancels too.
Issues in epic

https://github.com/Qiskit-Extensions/quantum-serverless/issues/895
https://github.com/Qiskit-Extensions/quantum-serverless/issues/1163
(Optional) https://github.com/Qiskit-Extensions/quantum-serverless/issues/1127

Good point! Adding it


[openstack] timeout calculation

I am sorry if I am not correct, I am not a everyday rubyist. We store 'starded_at' as Time.now.to_i but later we subtract from Time.now.utc assuming local time is in UTC as well.
https://github.com/chef/chef-provisioning-fog/blob/ebd78fae4b4582c5abd284b1cbe9954e425f2eda/lib/chef/provisioning/fog_driver/driver.rb#L212
http://ruby-doc.org/stdlib-2.1.1/libdoc/time/rdoc/Time.html

This is a clearer example, and does indeed look like it's wrong.
https://github.com/chef/chef-provisioning-fog/blob/ebd78fae4b4582c5abd284b1cbe9954e425f2eda/lib/chef/provisioning/fog_driver/driver.rb#L372

I'll get this PR in ASAP. this seems like pretty easy fix.

fix https://github.com/chef/chef-provisioning-fog/pull/133


Failing rules

Trying to deploy latest rules I am getting this:
Failed Tests Summary
	AWS.S3.Bucket.ActionRestrictions
		['Bucket Does Not Restrict Any Actions Expanded']

A dependency updated, which broke the rule.
We've had this exact same test on this same rule broken by this same dependency update in the past, so I'm just going to remove the test. The rest of the test logic should really be sufficient, and because we can't dynamically generate the test cases in python this rule will just break every few months or so whenever AWS adds a new s3 permission. Closed by #129.


Exponentiation works inconsistently

Description:
Exponentiation works inconsistently
Steps to reproduce:
Produces a point (?)
r = 0.01 to 0.02
(1+r)^2

Produces a distribution:
r = toSampleSet(0.01 to 0.02)
(1+r)^2

Expected behavior:
So there are two possible outcomes I can want:

dist^a = Every x point exponentiated to a, with the same y point
dist^a = Draw floor(a) points, multiply them together. Draw an aditional point, take it to the (a - floor(a)) power, and multiply it by the result of the previous step.

Example: dist^2.5 = dist * dist * sqrt(dist), where each of the elements of that operation is sampled independently.
For example, when calculating the return rate, the returns from each year would be uncorrelated, so I would want to draw returns independently.

What I got instead:

What I suggest:
Have some powIndependentSamples or similar function. Alternatively, have some "get N independent samples" function (which maybe already exists)
Underlying problem: Exponentiation is underspecified, and might be footgun. Maybe deprecate the ^ operator in favor of named functions, e.g., powIndependent and powFunctional (would need a better name)?

I consider this bug fairly severe, because it means that I don't know how to express in squiggle something like: "The distribution of capital which has a rate of growth which varies each year from 0.01 to 0.02 after 10 years", or "the distribution of population which has a rate of growth which varies each year from 0.005 to 0.03"

This is a clear bug.
The intended behavior is the first of the outcomes you mention.
The second of the outcomes you mention is basically a totally different feature, but one I've been thinking about. It's useful for modeling finances / the stock market, for example. (with independent yearly gains/losses). Not sure what the best way is of handling it. It's not unique to exponentiation; there are cases where you want this for addition/multiplication.

Ok, the non-numeric part of the bug is not as critical as I thought, since squiggle is now expressive enough to allow me to implement it; see here: https://github.com/quantified-uncertainty/squiggle/discussions/659#discussioncomment-2917360
That said, I do think that something like that would be welcome as part of the standard lib.

Produces a point (?)
r = 0.01 to 0.02
(1+r)^2
Produces a distribution:
r = toSampleSet(0.01 to 0.02)
(1+r)^2

Both of these now look identical; I'm not sure when that behavior have changed.
And powIndependentSamples is discussed on #659, which we should split into new issues at some point. I'm closing this.


How to make images black and white?

Hello I was wondering how you managed to make the synthetic images black and white? I am currently trying to explore this repository but I can only mange to get the yellow and purple images displayed

That's due to matplotlib. The images are grayscale, so when you do:
plt.imshow(img)

it displays the 2D matrix as a heatmap. You can stack it, to make it RGB, then it's a 3D matrix with depth 3 and matplotlib interprets that as a colored image:
plt.imshow(np.dstack([img, img, img]))


Improvement: DO-3044: Performance improvement of all list components

Motivation and Context

It was reported that scrolling in our list components feel sluggish. We recently did a performance pass that addressed scrolling when the list was NOT open with significant boosts across the board.
This PR improves performance of scrolling the actual list by 485x for big lists (10000 elements) for all list components:

Select
Multiselect
ComboBox
SectionedList
DatepickerSelect
ContextMenu

To optimize this even further we can use virtualized rendering to only render subset of the items dynamically, but at this point the performance feels acceptable.
Fixes https://github.com/causalens/dara/issues/307.
Implementation Description

Every single component was rendering items slightly differently. Refactored it all into a single memoized DropdownList component, which now uses ListItem as a default renderer, but can be customized with a render prop.
The components were also rerendering due to setting their hover status with JS instead of CSS. All references to highlightedIndex were replaced with a : hover style.
In some cases the chevron was rerendering as well - it has been extraced and memoized now.

All components are now memoized properly and won't rerender when scrolled.
Any new dependencies Introduced

How Has This Been Tested?

React profiler + chrome profiler. Didn't notice any significant memory impact.
PR Checklist:

[x] I have implemented all requirements? (see JIRA, project documentation).
[x] I am not affecting someone else's work, If I am, they are included as a reviewer.
[x] I have added relevant tests (unit, integration or regression).
[x] I have added comments to all the bits that are hard to follow.
[x] I have added/updated Documentation.
[x] I have updated the appropriate changelog with a line for my changes.

Screenshots (if appropriate):

BEFORE, a frame takes 193ms:

https://github.com/causalens/dara-ui/assets/119343173/17037e59-8dff-4296-8996-a647b47a1b37
Notice how every single item in the list is rerendered on scroll.
AFTER, a frame takes 0.2ms:

https://github.com/causalens/dara-ui/assets/119343173/6b58554d-037a-437b-b82f-d246a9a54be4

@patricia-causalens Thanks for checking it out. Turns out the custom styling was not applied properly when using higher-order styled components. Given that the datepicker select looks distinct enough from a regular select item, it now renders the styled version directly instead of inheriting from the generic list item.
A couple of other issues came up:

The scroll-into-view functionality of downshift doesn't work if the item is memoized. This item is now manually de-memoized when the menu is opened to let downshift automatically scroll it into view. Profiling this new change did not highlight any performance issues.
Keyboard navigation highlighting. Replacing all highlightedIndex styling with CSS :hover turned out to cause issues for highlighting items when using the keyboard, so a similar fix needed to be applied. In order to prevent rerenders when the mouse is moved, a new state is hooked directly into downshift's onHighlightedIndexChange that updates only when using the keyboard and resets when using the mouse. This results in a smooth experience when using the mouse as no rerenders are happening (only CSS :hover is used) and only the 2 affected items are rerendered when using the keyboard.

Turns out there was a global style being applied to only that particular datepicker filter which was overriding some colors. Since dropdowns can now customize how elements are rendered, that global style was removed.
The dropdowns are now aligned with the design:

Currently selected element now has a different color from the highlighted element, so it's easier to tell which one is which when hovering
The datepicker is now correctly taking into account the gap between elements in its height calculation
Datepicker's items now have rounded corners


Cursor highlight group appears not to be working

Using LushRunTutorial as a minimum example, Cursor doesn't seem to take effect.

Cursor color can be effected by your terminal or other runtime and might need extra settings, or be unsupported.


Add support for comments

It would be nice to be able to parse SQL statements with comments in them.
Example
create--blah blah
table--blah blah
tt--blah blah
(--blah blah
x--blah blah
)--blah blah
;

Agreed -- and support for /* ... */-style comments would also be nice.
The best way to do this is perhaps to pre-process the entire input string with a parse rule (or regex) that removes all comments before running through the normal parser sequence.
I'll try to implement this when I get a chance -- probably not for another two weeks or so, though.

I'm not sure this can be done with a simple input preprocessing rule. How would you handle cases such as :
select '
   -- this is not an SQL comment
';

or
INSERT INTO t VALUES ('/*', '*/');

or
se/**/lect 0;


Improve compilation time of slides

Currently, typical slides take about a minute compilation time on my machine. That is way too slow to layout slides. Here are a number of ideas to achieve a speedup:

We could introduce a draft mode that is faster by simplifying the template or so. Is there already a draft mode for our template?
Check which slides need most computation time. The title slide? Slides with tikz? Slides with listings?
Significantly simplify our template and analyze what consumes most time. Header? Footer?
We could split slides into three parts and add those as PDF with overlay for the page numbers (could also be helpful to create the PDF with slides for all lectures). Problem here would be that jumps within a lecture but across parts are hardly feasible.
We could include certain parts of the slides (e.g., pictures, listings) by creating a PDF separately and including this. I know that it is even feasible with latex to only regenerate those pdfs if the source for them has changed.
We could use include and includeonly to omit parts that are not relevant for the current editing.

The new template is much faster already, especially due to limiting the use of Tikz. With the includeonlyframes in our example, I do not think we need any further speedups.

I added an example for the use of \includeonlyframes{} to the demo slides in 78738e3209dd0262f3793e81f04f9adc8def31f2.


Claims with uri as a key returned as array

Current behavior
Our ID token contains claims with uri as a key and an object as the value:

For some reason, oidc-client store and return these claims as an array with duplicates:

In the image above, elements at index 0 and 1 are structurally the same.
Expected behavior
Claims should be stored and returned exacly the same as they are in the token.
Environment
"oidc-client": "1.11.5"

Claims should be stored and returned exacly the same as they are in the token.

But when merging claims from the userinfo endpoint they have to get put in there somehow.

@brockallen  Thats why I have duplicates? One coming from the ID token and one coming from the userinfo endpoint? It kind of make sense but its not very intuitive. Would it be possible to merge identical claims and return them as an object?

Thats why I have duplicates? One coming from the ID token and one coming from the userinfo endpoint?

I don't know, but it's possible.


fix: don't return zero value fiat exchange rates

the upstream fiat exchange rate data source will return 0 for the current day for timezones with a
positive offset, e.g. australia
this filters out these invalid results
the client consuming this data will use the most recent rate rather than zero, fixing charts

closes https://github.com/shapeshift/web/issues/2199


Initial benchmark analysis

The benchmark analysis notebook here currently contains investigation of the count patterns seen in the cDNA vs. full transcriptome reference indexes, in service of the discussion in #4. I expect to add analysis of the decoy sequences soon (some parts of which can be seen here), but I thought it was worth getting this into a PR in its current state.
I initially tried to use some S3 libraries within R, but those did not seem to work the way I wanted, so I resorted to simply downloading the result files. to make that easier, I launch the docker image with the command described in README.md to import the local AWS tokens for access to S3 (the docker image includes the aws-cli tools). To run this notebook therefore requires that you already have run aws setup on your local system with credentials that allow read access to s3://nextflow-ccdl-results

I have added some analysis of the decoy indexes to this notebook, which were more interesting than I expected! I am going to request @envest for review to start, but I think @cgreene and @jaclyn-taroni might want to have a look at the results as well.
Most intriguing results are right at the end, where I compare the full transcriptome to coding-only* indexes and notice that you get much more concordant results between the two when you include decoy sequences. Or I did something funny, which is always possible.

Coding only includes pseudogenes, for some reason. Ask Ensembl.

The easiest way to view the notebook is probably http://htmlpreview.github.io/?https://github.com/AlexsLemonade/alsf-scpca/blob/jashapiro/benchmark-analysis/workflows/benchmarks/benchmark-analysis.nb.html#Comparing_decoy_indexes

I do agree with @envest's sentiment:

For deeper understanding of the differences due to different indices, I think it may be worth including some additional samples, especially from another data contributor.

When we have some, we can repeat?

👍  works for me! Are the samples you've included so far the same cancer type? I was under the perhaps mistaken impression that there was more than one cancer type as part of this particular project and I'm curious if we'd see differences/less consistency across cancer types or if it would be like "weird transcript is weird" uniformly. This is a musing beyond the scope of this pull request.

At this point, all the same type. We were supposed to get the other type, but there seems to be a delay...


[WIP][Chef-16] Fix windows functional tests

Signed-off-by: Neha Pansare<EMAIL_ADDRESS>
Description
Run windows functional tests under verify pipeline using rspec directly instead of rake task which keeps getting timedout.
Running the rake task on a similar windows2019 system throws:
Unhandled Exception: System.AccessViolationException: Attempted to read or write protected memory. This is often an indication that other memory is corrupt.
   at ?A0xce4584d1.MI_Serializer_SerializeInstance_INTL(_MI_Serializer* serializer, UInt32 flags, _MI_Instance* instanceObject, Byte* clientBuffer, UInt32 clientBufferLength, UInt32* clientBufferNeeded)
   at Microsoft.Management.Infrastructure.Native.SerializerMethods.SerializeInstance(SerializerHandle serializerHandle, UInt32 flags, InstanceHandle instanceHandle, Byte[] outputBuffer, UInt32 offset, UInt32& outputBufferUsed)
   at Microsoft.Management.Infrastructure.Serialization.CimSerializer.Serialize(CimInstance cimInstance, InstanceSerializationOptions options, Byte[] buffer, UInt32& offset)
   at Microsoft.PowerShell.DesiredStateConfiguration.Commands.InvokeDscResourceMethodCommand.SerializeCimInstanceToMof(CimInstance cimInstance)
   at Microsoft.PowerShell.DesiredStateConfiguration.Commands.InvokeDscResourceMethodCommand.CreateParametersCollection()
   at Microsoft.PowerShell.DesiredStateConfiguration.Commands.InvokeDscResourceMethodCommand.ProcessRecord()
   at System.Management.Automation.CommandProcessor.ProcessRecord()
   at System.Management.Automation.CommandProcessorBase.DoExecute()
   at System.Management.Automation.Internal.PipelineProcessor.SynchronousExecuteEnumerate(Object input)
   at System.Management.Automation.PipelineOps.InvokePipeline(Object input, Boolean ignoreInput, CommandParameterInternal[][] pipeElements, CommandBaseAst[] pipeElementAsts, CommandRedirection[][] commandRedirections, FunctionContext funcContext)
   at System.Management.Automation.Interpreter.ActionCallInstruction`6.Run(InterpretedFrame frame)
   at System.Management.Automation.Interpreter.EnterTryCatchFinallyInstruction.Run(InterpretedFrame frame)
   at System.Management.Automation.Interpreter.EnterTryCatchFinallyInstruction.Run(InterpretedFrame frame)
   at System.Management.Automation.Interpreter.Interpreter.Run(InterpretedFrame frame)
   at System.Management.Automation.Interpreter.LightLambda.RunVoid1[T0](T0 arg0)
   at System.Management.Automation.DlrScriptCommandProcessor.RunClause(Action`1 clause, Object dollarUnderbar, Object inputToProcess)
   at System.Management.Automation.DlrScriptCommandProcessor.Complete()
   at System.Management.Automation.CommandProcessorBase.DoComplete()
   at System.Management.Automation.Internal.PipelineProcessor.DoCompleteCore(CommandProcessorBase commandRequestingUpstreamCommandsToStop)
   at System.Management.Automation.Internal.PipelineProcessor.SynchronousExecuteEnumerate(Object input)
   at System.Management.Automation.Runspaces.LocalPipeline.InvokeHelper()
   at System.Management.Automation.Runspaces.LocalPipeline.InvokeThreadProc()
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
   at System.Threading.ThreadHelper.ThreadStart()

Related Issue

Types of changes

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)
[ ] Chore (non-breaking change that does not add functionality or fix an issue)

Checklist:

[ ] I have read the CONTRIBUTING document.
[ ] I have run the pre-merge tests locally and they pass.
[ ] I have updated the documentation accordingly.
[ ] I have added tests to cover my changes.
[ ] All new and existing tests passed.
[ ] All commits have been signed-off for the Developer Certificate of Origin.

Closing this, this was only for trial.


Please add Azure Container Registry Data endpoint page to Azure Container Registry concept

Hi,
There is a existing blog about why/how to use data endpoint for ACR at https://azure.microsoft.com/en-us/blog/azure-container-registry-mitigating-data-exfiltration-with-dedicated-data-endpoints/.
Please add  dataendpoint information to ACR concepts at https://docs.microsoft.com/en-us/azure/container-registry/ for better discoverability.

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: b876f15f-5cad-5764-891d-ff8184f3d8ca
Version Independent ID: 7831214a-7ed5-30ae-d3c0-d0474a90f56c
Content: Managed container registries - Azure Container Registry
Content Source: articles/container-registry/container-registry-intro.md
Service: container-registry
GitHub Login: @SteveLas
Microsoft Alias: stevelas

@susanshi Thanks for the feedback. We shall evaluate and update the document as appropriate.

@susanshi Thanks for the feedback. I have assigned the issue to the content author to evaluate and update as appropriate.

#assign: @tejaswikolli-web

#please-close.
There is a backlog work item for this request


Weak property prevents Sendable conformance

Describe the bug
Weak properties are intrinsically mutable, so no object containing one can be marked Sendable except via @unchecked Sendable. However, since releasing the last reference is (as far as I know) thread-safe such that all the references everywhere are released all at once, there is no possibility of a data race, so this particular form of mutability should not invalidate checked sendability.
Steps To Reproduce
final class Thing : Sendable {
    init (other: AnyObject) {
        self.otherThing = other
    }
    private(set) weak var otherThing : AnyObject?
}

Expected behavior
Since otherThing is immutable outside of the automatic "weak" behavior, it should pass the checks for Sendable conformance.
Additional context
Another mention of this issue is at https://forums.swift.org/t/sendable-taking-swift-5-6-for-a-spin/55426.
There is an early discussion about weak properties' thread safety at https://forums.swift.org/t/thread-safety-of-weak-properties/422.

If the compiler can't infer that otherThing is never mutated by anything other than the runtime, perhaps we need additional notation: assignonce or runtime(set) or lazy let.


Multi-user support

Reduce the critical info stored in Node.js globals

closing as duplicate of issue #70


Minor suggestions glossary

The glossary has some minor problems:

Footnote 1 refers to biosphere exchange, that table doesn't exist anymore (I think it'd be better to add the table than to remove the footnote)
Characterization factor and Impact Assessment are discussed before Demand  and LCI. It may be more logical to move CF and LCIA to after demand, as that better reflects steps taken in an LCA
I think in some places Method is referred to as 'Impact Category' in Brightway, so this is not entirely consistent -but that's more a Birghtway problem-

...we're moving fast and breaking things during the hackathon. Your valuable contribution to the original glossary will not be lost. They are about to be merged with some additional entries of @cmutel.


OS X can't get IR and depth stream

Required Info

Camera Model
SR300

Firmware Version

Operating System & Version
OS X 10.12.4

Kernel Version (Linux Only)

Build System
Makefile

I used brew to install librealsense and test the codes as in the opencv tutorial. I can run the color stream code but can't run the IR one.
The error message prints like, "terminating with uncaught exception of type rs::error: Timeout waiting for frames."

Hi,
Did you try to run included examples, like cpp-config-ui?

@dorodnic I tried it and I got error messages like these:
RealSense error calling rs_set_device_option(device:0x7fd2e0801620, option:COLOR_BACKLIGHT_COMPENSATION, value:1):
libusb_control_transfer(...) returned LIBUSB_ERROR_NO_DEVICE

Hi, I have the same error, and can only run the color stream

hi same problem for me
high Sierra brew installation 1.12.1 version

Hello,
This may be a problem with the USB ports in your computer. Did you try connecting the camera to a different computer?
Let us know if you still need help with this issue.
Regards,
Jesus G.
Intel Customer Support


Upgrade samples to Android Pie (9.0)

Partial cover of #442
Update the samples to compile for Android Pie (9.0) instead of Oreo (8.1).
Also samples now start support at Android Lollipop 5.0 (API Level 21) instead of Android KitKat 4.4
This is required to be able to use Shell and Visual.

2 things:

Maybe we should write sth. in the docs that the .fake directory should be deleted else it won't work when running ./build.sh - it will fail at BuildFabulous.

The Calculator App does not work anymore. Can't make it work on my device (Motorola G6 Plus).

Works now. Configurationmanager needed to provide Calculator.Droid (wasn't set as porvided like the other projects); rebuild and restart after this worked.

@SergejDK I'm not sure to understand.
What do you mean by "ConfigurationManager needed to provide Calculator.Droid"?

@TimLariviere have it on german so i hope the follwoing screenshot shows what i mean:

the right column i think translated should be "provided" or "supplied"...
If you check this it works.

Ah ok. In English, the columns are "Build" and "Deploy".
So makes sense, it weren't working.
Visual Studio prevented the sample to be deployed on your device.


Matching simulation with more read partitions than write partitions

What changed?
Adding a new matching simulation scenario to measure the impact of having more read partitions than write partitions on a tasklists.

default case with 2 read and 2 write partitions
vs
new case with 4 read, 2 write partitions

Why?
This comparison is interesting because tasklist partition increments are done in phases where first read partitions are increased and then write partitions are increased to the same. During that period, the poll requests routed to the partitions without any write activity would not find any tasks and must be forwarded to parent partition in order to find a task.

How did you test it?
Ran ./scripts/run_matching_simulator.sh more_read_partitions and ./scripts/run_matching_simulator.sh default.
Highlights from the results:

Measurement
partitions r=2, w=2
partitions r=4, w=2

Tasks generated
1500
1500

Tasks polled
1500
1500

Avg Poll latency (ms)
240
246

P99 Task latency (ms)
23
2325

Max Task latency (ms)
133
2977

Simulation Duration (s)
36.5
38.5

Tasks Written to DB
22
481

Task forward attempts
158
1219

Sync matches
1480
1115

Async matches
20
385

Conclusion: Having more read partitions than read partitions clearly impacts the p99 task latencies and sync match rate in a negative way.

Why not we always have a check as well to always have less or equal write partitions? I am not sure if we have it now.

That would require a validation of cross property value checks for dynamic configs. It's not the main problem/missing thing though. The problem is that the safe way to scale up a tasklist requires diverging read/write partition counts for a while and that during period task match latencies are elevated


Investigate alternative CircleCI plan options

User Need
As an Head of Hosting
I want the best possible value subscription
so that we know that we are making best use of public money
Value
We understand the benefits of moving to an alternative plan
Functional Requirements:

[x] Collate current spending data

[x] Complete Demand Request

[x] Complete Commercial Request Form

[ ] Obtain quote

[ ] Access potential Business case

[ ] Present findings to Head of Hosting

Acceptance Criteria:

We have the information required to decide if we want to change plans and can make a case to the Head of Hosting

Notes:

Commercial Request Submitted via Demand Team. Awaiting next steps.

Commercial Request Submitted via Demand Team. Awaiting next steps.

Awaiting quote. MoJ Commercial and reseller engaging with CircleCI.

Quote due next week

Blocked by investigation into possibility of buying via AWS contract.

This story is more of an epic and should be broken down further. Will close this and raise tickets for all the next steps.


Warning in server side rendering

Hi,
When using useComponentSize with server side rendering we experience this warning.
Warning: useLayoutEffect does nothing on the server, because its effect cannot be encoded into the server renderer's output format. This will lead to a mismatch between the initial, non-hydrated UI and the intended UI. To avoid this, useLayoutEffect should only be used in components that render exclusively on the client. See https://fb.me/react-uselayouteffect-ssr for common fixes.%s

The warning points to this ressource https://fb.me/react-uselayouteffect-ssr for correct handling on the server.
This is not major but should be better for those of us using SSR :wink:
Anyways, thanks for lib!

We've faced with the same issue. For now we've patched the local node-modules through patch-package
-let { useCallback, useState, useLayoutEffect } = require('react')
+let { useCallback, useState, useLayoutEffect, useEffect } = require('react')
+
+/**
+ * To properly measure. we need useLayoutEffect in the client but it generates a warning in the console
+ * since it has no effect when it runs on the server. This is to work around it.
+ * We've used this implementation: https://github.com/streamich/react-use/blob/master/src/useIsomorphicLayoutEffect.ts
+ *
+ * See this issue for more details: https://github.com/rehooks/component-size/issues/32
+ */
+const useIsomorphicLayoutEffect = typeof window !== 'undefined' ? useLayoutEffect : useEffect;

 function getSize(el) {
   if (!el) {
@@ -29,7 +38,7 @@ function useComponentSize(ref) {
     [ref]
   )

-  useLayoutEffect(
+  useIsomorphicLayoutEffect(
     () => {
       if (!ref.current) {
         return

This is the patch for v1.0.3
diff --git<EMAIL_ADDRESS><EMAIL_ADDRESS>index 5e652a2..a161d61 100644
---<EMAIL_ADDRESS>+++<EMAIL_ADDRESS>@@ -3,6 +3,15 @@ var React = require('react')
 var useState = React.useState
 var useCallback = React.useCallback
 var useLayoutEffect = React.useLayoutEffect
+var useEffect = React.useEffect
+/**
+ * To properly measure. we need useLayoutEffect in the client but it generates a warning in the console
+ * since it has no effect when it runs on the server. This is to work around it.
+ * We've used this implementation: https://github.com/streamich/react-use/blob/master/src/useIsomorphicLayoutEffect.ts
+ *
+ * See this issue for more details: https://github.com/rehooks/component-size/issues/32
+ */
+var useIsomorphicLayoutEffect = typeof window !== 'undefined' ? useLayoutEffect : useEffect

 function getSize(el) {
   if (!el) {
@@ -32,7 +41,7 @@ function useComponentSize(ref) {
     [ref]
   )

-  useLayoutEffect(
+  useIsomorphicLayoutEffect(
     function() {
       if (!ref.current) {
         return


fix: automate adding new jenkins servers

so its an easier UX importing new Jenkinfiles

/lgtm

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: jstrachan
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS [jstrachan]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@jstrachan: you cannot LGTM your own PR.

In response to this:

/lgtm

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the jenkins-x/lighthouse repository.


Error on whitelist server

Issue Report

IP-Check Version:
2.07
Java Version:
8
Database Type:
file
Description of the problem:
when a player that is not whitelisted this error will spam the console.
ERROR Could not pass event PlayerLoginEvent to IP-Check v2.0.7
How to replicate:

setup whitelist server, ask a non-whitelisted player to login, this error will show
Checklist:

[x] I made sure there aren't duplicates of this report (Use Search)
[x] I made sure I am using an up-to-date version of IP-Check.
[x] I Made sure the bug/error is not caused by any other plugin.

Could you post the error as this is critical to see to solve the isssue

[17:51:48] [Server thread/ERROR]: Could not pass event PlayerLoginEvent to IP-Check v2.0.7
org.bukkit.event.EventException
at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:306) ~[Spigot.jar:git-Spigot-4741400-a1d3777]
at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) ~[Spigot.jar:git-Spigot-4741400-a1d3777]
at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:502) [Spigot.jar:git-Spigot-4741400-a1d3777]
at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:487) [Spigot.jar:git-Spigot-4741400-a1d3777]
at net.minecraft.server.v1_11_R1.PlayerList.attemptLogin(PlayerList.java:501) [Spigot.jar:git-Spigot-4741400-a1d3777]
at net.minecraft.server.v1_11_R1.LoginListener.b(LoginListener.java:121) [Spigot.jar:git-Spigot-4741400-a1d3777]
at net.minecraft.server.v1_11_R1.LoginListener.F_(LoginListener.java:57) [Spigot.jar:git-Spigot-4741400-a1d3777]
at net.minecraft.server.v1_11_R1.NetworkManager.a(NetworkManager.java:233) [Spigot.jar:git-Spigot-4741400-a1d3777]
at net.minecraft.server.v1_11_R1.ServerConnection.c(ServerConnection.java:140) [Spigot.jar:git-Spigot-4741400-a1d3777]
at net.minecraft.server.v1_11_R1.MinecraftServer.D(MinecraftServer.java:842) [Spigot.jar:git-Spigot-4741400-a1d3777]
at net.minecraft.server.v1_11_R1.DedicatedServer.D(DedicatedServer.java:399) [Spigot.jar:git-Spigot-4741400-a1d3777]
at net.minecraft.server.v1_11_R1.MinecraftServer.C(MinecraftServer.java:678) [Spigot.jar:git-Spigot-4741400-a1d3777]
at net.minecraft.server.v1_11_R1.MinecraftServer.run(MinecraftServer.java:576) [Spigot.jar:git-Spigot-4741400-a1d3777]
at java.lang.Thread.run(Unknown Source) [?:1.8.0_111]
Caused by: java.lang.NullPointerException
at net.risenphoenix.ipcheck.database.DatabaseController.addUUID(DatabaseController.java:205) ~[?:?]
at net.risenphoenix.ipcheck.database.DatabaseController.log(DatabaseController.java:177) ~[?:?]
at net.risenphoenix.ipcheck.events.PlayerLoginListener.execute(PlayerLoginListener.java:82) ~[?:?]
at net.risenphoenix.ipcheck.events.PlayerLoginListener.(PlayerLoginListener.java:67) ~[?:?]
at net.risenphoenix.ipcheck.IPCheck.onPlayerLogin(IPCheck.java:88) ~[?:?]
at sun.reflect.GeneratedMethodAccessor354.invoke(Unknown Source) ~[?:?]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_111]
at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_111]
at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:302) ~[Spigot.jar:git-Spigot-4741400-a1d3777]
... 13 more
[17:51:48] [Server thread/INFO]: Disconnecting com.mojang.authlib.GameProfile@2de3099b[id=5ffc199f-ee09-4b62-b1b0-c029a71fd915,name=OpLaMLaM,properties={textures=[com.mojang.authlib.properties.Property@71bde2cc]},legacy=false] (/<IP_ADDRESS>:62630): You are not whitelisted on this server!

I cant reproduce this error on my test server.
What version of MC is your server?

1.11.2
If u are a white listed player this error won't occur, u have to try to login as non whitelist player

1.11.2 spigot

I know how to test. It still wont happen to me.
Have you updated all other plugins/spigot build?

Updated to the lat build from the spigot buildtools and created a new spigot 1.11.2 file.
It still wont happen to me.
See here my startup log including me not whitelisted and deOPed.

Are u using MySQL or file as database?

I tested both with or without MySQL

Hmmm, let me try to find out what's the cause of the error by reduce plugins once at a time. Will get back to you

There is an issue with the MySQL, after a while it losses connection and gives an error when you try to log in.
Restart the server and see if the same happens.


Some folders don't use ~ when showing full path

Show the Open Recent menu
Some folders in my home directory use ~, some don't, probably a recent regression

I think you have worked on the file labels @isidorn? Sorry if I'm misremembering

I don't have repro steps to get them to show up one way or another

Yes, I have worked on the file labels. Assigning to July to investiage.

I investigate a bit into this and I believe the problem is the following, the workspace asks for the label of the workspace very early, before the formatter is registered. It goes down this path
https://github.com/microsoft/vscode/blob/eebfafcc96523075cdca0e033a28ef3b5346af5e/src/vs/workbench/services/label/common/labelService.ts#L141
Where we use a depracted resolvedUserHome in order for the method to be sync and not async.
I believe we had this problem since we introduced an async fetching of user home.
More details can be found here https://github.com/microsoft/vscode/issues/83213


Add wordcount and line count filtering to address #89

word and line count filtering
addresses #89
Branching checklist

[x] There is an issue associated with your PR (bug, feature, etc.. if not, create one)
[x] Your PR description references the associated issue (i.e. fixes #123)
[x] Code is in its own branch
[x] Branch name is related to the PR contents
[x] PR targets master

Static analysis checks

[x] All rust files are formatted using cargo fmt
[x] All clippy checks pass when running cargo clippy --all-targets --all-features -- -D warnings -A clippy::unnecessary_unwrap
[x] All existing tests pass

Documentation

[x] New code is documented using doc comments
[x] Documentation about your PR is included in the README, as needed

Additional Tests

[x] New code is unit tested
[x] New code is integration tested, as needed
[x] New tests pass

those changes are incorporated now!

as for the clippy weirdness, I confirm that it does not happen in current nightly with versions of stuff:
❯ cargo clippy -V
clippy 0.0.212 (f5230fb 2020-11-16)

❯ cargo -V
cargo 1.49.0-nightly (2af662e22 2020-11-12)

❯ rustc -V
rustc 1.50.0-nightly (f5230fbf7 2020-11-16)

The latest commit simply appeases clippy stable, and should be removed in a couple months or so 🤷

Changes look good!  i'll keep an eye out for when stable clippy catches up with the current nightly.  Thank you for your help!


test flake: py27_native.test.unit.beta._utilities_test.ChannelConnectivityTest segfaults

+ dirname /var/local/git/grpc/tools/run_tests/helper_scripts/run_python.sh
+ cd /var/local/git/grpc/tools/run_tests/helper_scripts/../../..
++ realpath py27_native/bin/python
+ PYTHON=/var/local/git/grpc/py27_native/bin/python2.7
++ pwd
+ ROOT=/var/local/git/grpc
+ /var/local/git/grpc/py27_native/bin/python2.7 /var/local/git/grpc/src/python/grpcio_tests/setup.py test_lite
running test_lite
Running       unit.beta._utilities_test.ChannelConnectivityTest.test_immediately_connectable_channel_connectivity
[95mTesting gRPC Python...
[0m[92mSUCCESS       unit.beta._utilities_test.ChannelConnectivityTest.test_immediately_connectable_channel_connectivity
[0mRunning       unit.beta._utilities_test.ChannelConnectivityTest.test_lonely_channel_connectivity
[92mSUCCESS       unit.beta._utilities_test.ChannelConnectivityTest.test_lonely_channel_connectivity
[0m2 tests finished:
	2 successful
	0 unsuccessful
	0 skipped
	0 expected failures
	0 unexpected successes
Interrupted Tests:
	[]
Errors/Failures:
Unexpected successes: []
/var/local/git/grpc/tools/run_tests/helper_scripts/run_python.sh: line 25:  7496 Segmentation fault      (core dumped) $PYTHON "$ROOT/src/python/grpcio_tests/setup.py" "$2"

https://source.cloud.google.com/results/invocations/20e88258-5514-461c-902d-0bd4f495cd51/targets/github%2Fgrpc%2Fpython_linux_opt_native/tests

Also seen on mac: https://source.cloud.google.com/results/invocations/100dd499-7540-4da7-a8d2-26b02314e58c/targets/github%2Fgrpc%2Fpython_macos_opt_native/tests

Also seen on master a few times in the past.

Seen again just recently:
https://source.cloud.google.com/results/invocations/4b469fbd-91ae-4035-b55a-f740695f83cc/targets/github%2Fgrpc%2Fpython_macos_opt_native/tests


Troubles after training on my own data set

Hello,
First, thank you for your implementation. It's very helpful.
I try to train the network with my own images but I face to several troubles:

Predictions have not the same size than input. I can observe a reduction. For exemple, my RGB input has a size of 512x512(x3) and my output has only a size of 430x418. Is it normal ?
Predictions are very strange. When I trained with only 1 or 2 epochs, I have a result (bad results, may be a random result). When I trained with more epochs, I observed a black image with a white frame as output (and the final train_mean_IoU is 1). It is like the network don't succeed to train with my ground truths and consider a black image as a target.

I checked my data format and it doesn't seem have issues with it. My images are RGB 8 bit images 512x512x3, exactly like images from PASCAL VOC 2012. On the other hand, my ground truths are one channel images, 8 bits, with 3 labels (0, 1 and 2). I used create_pascal_tf_record.py to create my record files with my images as explained.
I try to train the network with only 10 images. But it doesn't matter now because I want to go to an over learning. A problem with my data is that class are very unbalanced and I didn't find a way to weight them in deepLab.
I had exactly the same problem with TensorFlow Unet implementation, but not with CAFFE implementation of FCN-8s. I am looking for a solution for two weeks without success.
Do you have an idea ?
Thank you.

Hi @Lokyr , thank you for your interest in the repo.
Regarding your first question (predictions have not the same size as input), if your are talking about the ouput image produced by my inference.py code, it is because of the implementation. The predictions of deepLab and also other semantic segmentation model should produce the same size as input image. For the inference.py code specific, the predicted image size is same as input up to here, but when saving image using plt.imshow() and plt.savefig() here, the image size is automatically changed. You can refer to here to know how to save the prediction with exact size as input.
Regarding your second question, I first thought you are using incorrect ground truths with 3 channel images like this issue, but seems like you are correctly using 1 channel ground truths (but still I'm suspecting this could be the cause). Did you experiment with training PASCAL VOC dataset?  If you have the same issue with PASCAL VOC dataset, you may have wrong data preprocessing somewhere.

Thank you for your reply.
Sorry, I didn't check closed subjects. My apologies.
After test, I had the same issue with images from PASCAL VOC 2012. Reading your link, I think I found my problem. As you suspected, it probably comes from my ground truths.
As segmentationClass from PASCAL VOC, they were labeled on one channel but I used color table to visualise more easily. It seems it caused troubles during the training althought  the good image format, even if I don't understand exactly why. Yet, I didn't succeed to have correct results.
My problem may also come from unbalanced data. Is there already a way to weight the various class during the training ?

Hi @Lokyr ,
I'm glad to hear that you may have some hit for your problem.
Regarding unbalanced data, I've never tried but there is a way to give different weight to each class.  You may refer to here and here.

Hi @rishizek ,
I succeeded to weight my class during the training process. Unfortunately, the conclusion is always the same: a black image as prediction. However, the final mean_iu is always 0.4815225, not matter how many epochs I use or what parameters I chose (batch size, momentum, initial learning rate,...). It means ground truths seem correct (IoU is correctly computed) but I don't know why it fails during training.
I checked data in the record file and all seems good (labels are not empty). I tested without preprocess too (random scale and crop) and result doesn't change. Because of limits of my laptop, I can't test on all PASCAL VOC data, but I have the same problem when I try to train on 1 image from it (I used augmented data as you explained in another subject).
May be my Tensorflow is wrong and I should reinstall it.

I have a problem as same with you

@Lokyr
I have the same problem and I guess it because my data is heavily unbalanced more towards the background with label 0.
But I don't know how to apply the weighted loss to adjust the weights for each class.
Have you found any solution?

@Sam813
Unfortunately no. I had to give up Deeplab architecture and chose Unet architecture which seems to work better. I would like understand what it was wrong to use it in the futur, but I failed to find why and I have no time right now for this. During the next month, I will work again with Deep learning segmentation. I will update this thread if I succeed to solve the issue.
If you want to try a weighting of your class, you can use the following code from a link of rishizek (here):
` #Add weights for unbalanced class in cross entropy function (adapt the current code directly following the number of class and weighting)
class_weights = tf.constant([0.03,0.97]) # Here, I weighted the first label (my background class) with 0.03 and the other class with 0.97
weights = tf.gather(class_weights, valid_labels)
cross_entropy = tf.losses.sparse_softmax_cross_entropy(
logits=valid_logits, labels=valid_labels,  weights=weights)`
Change the cross entropy calculation in deeplabv3_model_fn function from deeply_model.py.
But, as much as I failed to have good results, I can not say if it works or not. Can you let me know if you succeed ?

@Lokyr
Thanks for the answer,
I get back to work with deeplab, I will try this and update you here.

@Lokyr @Sam813 for me an issue was that my labels were not consecutive - e.g., if you have a two-class segmentation then your labels should be 0 and 1, but I had them 0 and 200. Changing the labels solved my problem, maybe it can help you as well

@AlexDenis Thank you for your help and your suggestion. Unfortunately, I checked my datas several times (my row data and my record data coming from row data) and all is okay.  In addition, it works with other network as UNet.
I try again to use DeepLab and I have now the same problem that previously. The training is good (I have a mean IoU of 0.98 on my training set, probably a lot of over-learning) but when I want to infer my evaluate or test set, I have only black images. I tried to use the training set as evaluation and test sets (which should provide very good segmentations) but the result is the same.
Does anyone have the same problem?


Selected tab should be marked

💻 Environment
Platform: macOS
📒 Description
Selected tab should be indicated, currently it is not possible to understand which one is selected

I couldn't reproduce this bug on latest commit in Timeline PR  https://github.com/toggl/toggldesktop/pull/3032

Please double check 👍

Everything is ok in the current state of timeline branch


pyneuroml requirement triggers error

@pgleeson I'm getting this after merging your changes. Can it be relaxed so it doesn't trigger an error if you don't have the right version?
File "/usr/site/nrniv/local/python/netpyne/netpyne/neuromlFuncs.py", line 17, in
raise Exception('Error: pyNeuroML version %s is installed but at least v%s is required!'%(pynml_ver,min_pynml_ver_required))
Exception: Error: pyNeuroML version 0.3.4 is installed but at least v0.3.11 is required!

Will look into it.
For now, doing 'pip install --upgrade libneuroml' should fix your local error

Thanks.
Yes, the issue is in some workstations or HPCs users might not have permissions to update these libraries, so it would be better if it just disables neuroml conversion and shows a warning.

Ok, this PR should fix the issue: #311.
A better solution longer term might be to make pyNeuroML an explicit dependency, but let's see if this works for now...


 Out of curiosity - have you tried benchmarking this against Go libgit2 bindings running from ramdisk? For a small side project where I needed git blame functionality I got 10-20x speed boost from doing just that.

Current coverage is 61.48%

Merging #21 into master will not affect coverage as of bf10db4

@@            master     #21   diff @@
======================================
  Files           24      24
  Stmts         1532    1532
  Branches       203     203
  Methods          0       0
======================================
  Hit            942     942
  Partial         92      92
  Missed         498     498

Review entire Coverage Diff as of bf10db4

Powered by Codecov. Updated on successful CI builds.

Hi Marcin,
Thanks for the badge, we are working in a proper README right now. :dancer:
About git2go in ramdisk vs go-git, we use go-git with some tweaks, for example we discard every binary file when we are reading the packfile so this is much faster than git2go, I don't have the numbers  here but we compared it some months ago.
BTW We are working also in a ObjectStorage implementation that analyzes the files and discarded the content making the memory foot print very low.
About the git-blame on ramdisk, our current implementation of blame is in early stages so we cannot compare it. But yes maybe will be faster run the libgit2 version.
Obviously a ramdisk is an easy solution for this problems, but dealing with big repositories becomes a memory problem if you don't discard the binaries.

Thanks!


Adding UA (Ukraine) postal code validation

Added UA (Ukraine) postal code validation to resolve #946 issue.
Updated tests, browser build, and readme.
Rule added in according with information of Ukrainian postal codes

Thanks for your PR @Maxim-Mazurok, I'll review soon.

@profnandaa thank you!

Thanks, @profnandaa, I linked this wiki page in original description of PR and I'm from Ukraine originally, so I can confirm that it's valid check.

Thanks for the PR :smile:


ImportError: cannot import name 'bdd_tester'

$ flask db upgrade
Usage: flask db upgrade [OPTIONS] [REVISION]

Error: While importing "DataQualityTester", an ImportError was raised:

Traceback (most recent call last):
  File "/home/bjwebb/opendataservices/pwyf/data-quality-tester/.ve/lib/python3.6/site-packages/flask/cli.py", line 235, in locate_app
    __import__(module_name)
  File "/home/bjwebb/opendataservices/pwyf/data-quality-tester/DataQualityTester/__init__.py", line 41, in <module>
    from DataQualityTester import commands, routes, models, views, lib
  File "/home/bjwebb/opendataservices/pwyf/data-quality-tester/DataQualityTester/commands.py", line 9, in <module>
    from DataQualityTester.models import SuppliedData
  File "/home/bjwebb/opendataservices/pwyf/data-quality-tester/DataQualityTester/models.py", line 13, in <module>
    from DataQualityTester.tasks import download_task
  File "/home/bjwebb/opendataservices/pwyf/data-quality-tester/DataQualityTester/tasks.py", line 7, in <module>
    from bdd_tester import bdd_tester
ImportError: cannot import name 'bdd_tester'

I'm assuming this is due to changes in the latest versions of the bdd_tester.

Oops – yes, you’re right! Thanks for spotting it. I’ll take a look.

Fixed in 25ac5c48578f375aa1d2a53207c046d588374c52.


Use DisposableStore

Vscode implemented a new class that replaces the need for an array of disposables https://github.com/microsoft/vscode/commit/3d5ce6be5ef8a770a8ecb1b1898e6609dacbb524 we would slowly migrate to using that in all cases that we are using array of disposables. (But also extend Disposable Class for places where that makes sense).

Closing older engineering-focused tasks.


[WIP 1.13] Flaky test_metrics.deploy_and_cleanup_dcos_package

High-level description
Fixes to integration test to avoid flakes
Corresponding DC/OS tickets (obligatory)
These DC/OS JIRA ticket(s) must be updated (ideally closed) in the moment this PR lands:

DCOS_OSS-4568 est_metrics.deploy_and_cleanup_dcos_package Framework hello-world still running

Checklist for all PRs

[x] Added a comprehensible changelog entry to CHANGES.md or explain why this is not a user-facing change: test change
[x] Included a test which will fail if code is reverted but test is not. If there is no test please explain here:
[x] Read the DC/OS contributing guidelines
[x] Followed relevant code rules Rules for Packages and Systemd

@mesosphere-mergebot label bump-ee

@mesosphere-mergebot  bump-ee

@mesosphere-mergebot bump-ee

@mesosphere-mergebot label ready for review

@mesosphere-mergebot bump-ee

@branden @philipnrmn @janisz this is ready for review!

@mesosphere-mergebot bump-ee

@mesosphere-mergebot bump-ee


[Bug]: failed to get orders in private zone

ODC version
4.2.3
OB version
not related
What happened?
I can not see any orders in private zone:

but I can get orders on condition of 'created by me':

What did you expect to happen?
I can get orders.
How can we reproduce it (as minimally and precisely as possible)?
follow what happened
Anything else we need to know?
No response
Cloud
No response

It seems to be a newly introduced problem in 4.2.3

pass


Backward pass of broadcasting on GPU is non-deterministic

import tensorflow as tf

def run(on_gpu):
    tf.reset_default_graph()
    tf.set_random_seed(42)
    with tf.device('/gpu:0' if on_gpu else '/cpu:0'):
        a = tf.random_normal([16, 16])
        b = tf.get_variable('b', shape = [], initializer = tf.constant_initializer(value = 0.0))
        c = a*b
        grad = tf.gradients(c, [b], gate_gradients=tf.train.Optimizer.GATE_GRAPH)[0]

    sess = tf.Session()
    sess.run(tf.initialize_all_variables())
    grad_val = sess.run(grad)
    return grad_val

for i in xrange(20):
    print repr(run(on_gpu=True)),
print ''
for i in xrange(20):
    print repr(run(on_gpu=False)),

Result:
23.066511 23.066511 23.066513 23.066513 23.066511 23.066513 23.066509 23.066513 23.066513 23.066511 23.066513 23.066511 23.066513 23.066513 23.066509 23.066511 23.066513 23.066513 23.066511 23.066511
23.066509 23.066509 23.066509 23.066509 23.066509 23.066509 23.066509 23.066509 23.066509 23.066509 23.066509 23.066509 23.066509 23.066509 23.066509 23.066509 23.066509 23.066509 23.066509 23.066509

As you can see, consistent result across CPU runs but inconsistent result across GPU runs.
No doubt a CUDA reduction order issue, but it'd be really nice if we can have deterministic reduction. I am using tf 0.8.0 (self-compiled against CuDNN v5). CuDNN version is 5005 (not rc)

Unfortunately, the reduction ops on GPU using asynchronous atomic adds, and are therefore fundamentally nondeterministic for floating point.  Making them deterministic would require either tree-structured reductions or integer math, both significantly slower.
I can leave this open with contributions welcome if you'd like (with an adjusted title), but it'll be a lot of work if someone tries to take it on, and it's unclear how best to make it happen automatically.  Even if one added deterministic reductions as an option (either as a separate op or as an attr on the existing ops), we'd need an unpleasant global flag to turn this on when building the backward pass.

I can understand if that's the case. Thanks for the response.

By the way, pure warp-shuffle (shfl_down, or shfl_xor for keep_dim) based block/warp reduction doesn't seem to be that much slower than warp-shuffle+atomic

@metap Do you have a link for that?  I don't quite follow, especially the bit about keep_dim since that doesn't change the computation structure.

Here's the link: https://devblogs.nvidia.com/parallelforall/faster-parallel-reductions-kepler/
Using shfl_xor just keeps the same copy of data across all warps (not mentioned in the article) and should be better in keep_dim situations. One example is in a fast CUDA word2vec implementation that utilize the warp shuffle to reach 3 million tokens/s with the default (as in the original implementation given by Mikolov) CBOW negative sampling setting

Cc @zheng-xq @benoitsteiner in case more GPU knowledgeable folk want to take a look.  Determinism would certainly be nice to have if we can get it.

The shfl_down results are only useful within a single wrap. That technique itself would take a second pass to accumulate the results for each block.
In general, there is no guarantee of determinism on GPU. Therefore, we are not sure how much effort we want to spend on it. Even if we can fix this particular kernel, we have other Cudnn kernels that do have non-determinism.

@zheng-xq could you give some examples of other CUDNN kernels that have non-determinism? I'd like to explore this a little. Just for education purposes, because like what you mentioned, it's probably not worth the effort unless some major thing happens down the road.

Which op exactly is non-deterministic here? These are the ops in the graph:
[<tf.Operation 'random_normal/shape' type=Const>,
 <tf.Operation 'random_normal/mean' type=Const>,
 <tf.Operation 'random_normal/stddev' type=Const>,
 <tf.Operation 'random_normal/RandomStandardNormal' type=RandomStandardNormal>,
 <tf.Operation 'random_normal/mul' type=Mul>,
 <tf.Operation 'random_normal' type=Add>,
 <tf.Operation 'b/Initializer/Const' type=Const>,
 <tf.Operation 'b' type=VariableV2>,
 <tf.Operation 'b/Assign' type=Assign>,
 <tf.Operation 'b/read' type=Identity>,
 <tf.Operation 'mul' type=Mul>,
 <tf.Operation 'gradients/Shape' type=Const>,
 <tf.Operation 'gradients/Const' type=Const>,
 <tf.Operation 'gradients/Fill' type=Fill>,
 <tf.Operation 'gradients/mul_grad/Shape' type=Const>,
 <tf.Operation 'gradients/mul_grad/Shape_1' type=Const>,
 <tf.Operation 'gradients/mul_grad/BroadcastGradientArgs' type=BroadcastGradientArgs>,
 <tf.Operation 'gradients/mul_grad/mul' type=Mul>,
 <tf.Operation 'gradients/mul_grad/Sum' type=Sum>,
 <tf.Operation 'gradients/mul_grad/Reshape' type=Reshape>,
 <tf.Operation 'gradients/mul_grad/mul_1' type=Mul>,
 <tf.Operation 'gradients/mul_grad/Sum_1' type=Sum>,
 <tf.Operation 'gradients/mul_grad/Reshape_1' type=Reshape>,
 <tf.Operation 'gradients/mul_grad/tuple/group_deps' type=NoOp>,
 <tf.Operation 'gradients/mul_grad/tuple/control_dependency' type=Identity>,
 <tf.Operation 'gradients/mul_grad/tuple/control_dependency_1' type=Identity>,
 <tf.Operation 'init' type=NoOp>]

Do you expect that BroadcastGradientArgs is non-deterministic?
For reference, I tried to run this (with both TF 1.4.1, and also TF 1.12.0), and it seems deterministic to me (980 GTX, CUDA 9.1).

The current high-level status is that there are now solutions for TensorFlow determinism when running on GPUs related to cuDNN (convolutions and max-pooling) and bias_add. Please see the following repo for up-to-date status: https://github.com/NVIDIA/tensorflow-determinism


WIP: Translate contribute/intermediate in french

/label kind/documentation

@AWKIF firstly you have to sign the CLA :)

Hey there! @AWKIF, looks like you haven't signed the CLA yet. Could I please have you do that? https://github.com/kubernetes/community/blob/master/CLA.md

i signed it

i signed it

/check-cla


Audit api endpoints

Added API endpoints to handle interaction with audit events:

Fetch
Uses page, audit_type, audit_date and acknowledged flags to retrive events from data api

Acknowledged
Allows an admin to mark this event as being OK'd in essence

Depends on https://github.com/alphagov/digitalmarketplace-api/pull/149


UI improvements for prolonged annotation work

We ran a doccano-based tagging experiment with over a dozen of collaborators who were doing the annotations and got some feedback on the UI that I thought I would share.
Among the feedback that we received was that whenever annotating continues over a longer period of time, doccano (default setup) causes somewhat of an eye fatigue. Two main reasons were identified.

Font was tiring and not easy to read. Now that I looked at it in more detail, I kind of agree that the default Arial doesn't look as nice and might not be that easy to read at 16pt.
White background caused eye-strain after longer periods of annotating documents. Indeed, default white might be somewhat a little too bright.

I think I will adapt the CSS on a local fork for my future experiments but was wondering whether someone with more UI experience can offer his/her input on best CSS values that could improve the default setup as well.

Thank you for great feedback! We are willing to incorporate your feedback to the new UI.

Continue on #341.


update miguelpimentel.do and readd forgetfulnotes.com

This PR is:

[x] Adding a new domain
[x] Updating existing domain size
[ ] Changing domain name
[ ] Removing existing domain from list
[ ] Website code changes (512kb.club site)
[ ] Other not listed

[x] I used the uncompressed size of the site
[x] I have included a link to the Cloudflare report
[x] This site is not an ultra minimal site
[x] The following information is filled identical to the data file

I confirm that I have read the FAQ section, particularly the two red items around minimal pages and inappropriate content and I attest that this site is neither of these things.

[x] Check to confirm

- domain: miguelpimentel.do
  url: https://miguelpimentel.do/
  size: 242.17
  last_checked: 2024-03-19

- domain: forgetfulnotes.com
  url: https://forgetfulnotes.com/
  size: 422.08
  last_checked: 2024-03-19

Cloudflare Reports:

miguelpimentel.do
forgetfulnotes.com

Thanks!


Upgrade test chain to polkadot-v1.3.0 from polkadot-sdk repo

In order to use non-deprecated repo and latest compiler's features we need to update all dependencies of our test chain to release-polkadot-v1.3.0 from 'polkadot-sdk' repository.

Version bumped to match those in #91 but dont have permission to push to substrate-node-template-move-vm-test yet...


Update to latest CIS Benchmark

Is your feature request related to a problem? Please describe.
The CIS Benchmark not up to date
Describe the solution you'd like
Update to latest CIS Benchmark

This is now updated to V2 in main release.
Cheers,

Thanks for updating to the CIS Benchmark 2.0, but the last version is 3.1.0. I've attached the PDF.
CIS_Microsoft_365_Foundations_Benchmark_v3.1.0.pdf

Hi @softengsistemas I know but thanks!
Just to mention that contributors are encouraged to propose their contributions as pull requests to the dev branch. This branch will periodically be merged to the main branch.
Thanks for using Monkey365.
Cheers,

@silverhack
Can we change the whole baseline ? like switching to SCuBA. Also if you can explain how we can convert the framework to a JSON and how the code interract with the rules of the JSON file

Hi @ZuuXs,
Depending on how many frameworks you have configured, you will be able to switch between them with the -Ruleset flag. You can find more information about how to create custom rules here and here and here


Punitive Damages in previous case

Description
As a user, I want the system to determine the amount of punitive damages that were awarded in a previous case
Scope of Work

[ ] Determine pattern to extract punitive damage from previous cases
[ ] Write script to extract punitive damage amounts from previous case data set

Story Points

8

Priority

[Low, Medium, High]

Risk

Low

Demo requirement

Product owner chooses 10 previous cases
We are able to accurately return the amount of punitive damages for said cases, if they exist

Acceptance Criteria

Presence of award of punitive damages in case detected
Amount of punitive damages awarded, if any, in case detected

Documentation, files, diagrams, etc. relating to this feature:
Url, books, etc.
Changes:

[Optional]

Cancelled as the project goals have pivoted #105


Ghidra slow DEX analysis

Hi, has anyone been able to improve Ghidra's performance in analyzing DEX binaries (Dalvik byte code)? Its takes Ghidra on average 60 seconds (sometimes more) to just process 1 DEX with only two analysis options enabled. I have seen other disassemblers analyze the same DEX file in under 10 seconds.

I can confirm this behavior - I use my own BC de-compiler. Has always been a bit slow.


Internationalize hashtags

These changes are to properly and systematically internationalize hashtag support to cover all unsupported major scripts like Greek, Armenian, Georgian, Amharic, Devanagari (Hindi, Nepali, Marathi), Gujarati, Punjabi, Oriya, Tamil, Telugu, Malayalam, Kannada, Sinhala, Tibetan, Burmese, Laotian, Khmer, and all unicode supported scripts in general.  Also, support for other scripts' numbers has been added, respecting the existing rules that define a hashtag.  To do this, I generalized the manual ranges of characters currently in place with unicode categories, checking all existing supported characters to ensure no regressions.  Only javascript does not support these unicode regexes (\p{L}, \p{M}, and \p{Nd}) and so manual ranges for the entire unicode standard were used.  Some special characters were added which don't fall into the above regex categories which are essential to writing words in these scripts.  I have tightened up the rules of a hashtag so that a hashtag must contain at least one unicode letter or mark and that numbers and special characters cannot appear on their own.
As this is my first time working in this code base and in some of these languages, your reviews are appreciated.  Actual deployment of this is on hold until we can work out all the ramifications with search, but I wanted to get the ball rolling.  Thanks for your help and comments.
Please review: @jakl @jugyo @psychs @niw

Congrats!
Hohyon Ryu
Software Engineer, Twitter Inc.
On Tue, Jan 20, 2015 at 11:45 AM, Eden Golshani<EMAIL_ADDRESS>wrote:

Merged #7 https://github.com/twitter/twitter-text/pull/7.
--
Reply to this email directly or view it on GitHub
https://github.com/twitter/twitter-text/pull/7#event-221845583.

For the Catalan-speaker users, we need to use the "middle dot" in hashtags for words in Catalan. Please, include it in the next i18n in hashtags. Thanks.


⚠ Jenkins Plugins Artifactory has degraded performance

In 4946ef0, Jenkins Plugins Artifactory (https://get.jenkins.io/plugins/artifactory/) experienced degraded performance:

HTTP code: 200
Response time: 1217 ms

Resolved: Jenkins Plugins Artifactory performance has improved in b9d244c after 25 minutes.


chore(deps): upgrade jenkins-x/jx3-versions to version 1.0.28

from: https://github.com/jenkins-x/lighthouse.git

@jenkins-x-bot-test: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

vault
1fe4b288905bdd09bc3b88a6db035bd5f5ac9275
link
/test vault

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the jenkins-x/lighthouse repository. I understand the commands that are listed here.

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by:
To complete the pull request process, please assign pmuir
You can assign the PR to them by writing /assign @pmuir in a comment when ready.
The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

/retest


Bumping graphql-typescript-codegen-resolvers from 0.14.5 to 0.18.2 by dependabot Maybe type not found

Describe the bug
After upgrading to 0.18.2 and regenerating types I see bunch of errors about missing Maybe type:
typings/types.d.ts:3966:33 - error TS2304: Cannot find name 'Maybe'.

3966     bayIndex?: BayIndexResolver<Maybe<number>, TypeParent, TContext>;
                                     ~~~~~

typings/types.d.ts:3968:41 - error TS2304: Cannot find name 'Maybe'.

3968     serialNumber?: SerialNumberResolver<Maybe<string>, TypeParent, TContext>;
                                             ~~~~~

typings/types.d.ts:3972:9 - error TS2304: Cannot find name 'Maybe'.

3972     R = Maybe<number>,
             ~~~~~

typings/types.d.ts:3977:9 - error TS2304: Cannot find name 'Maybe'.

3977     R = Maybe<boolean>,
             ~~~~~

typings/types.d.ts:3982:9 - error TS2304: Cannot find name 'Maybe'.

3982     R = Maybe<number>,
             ~~~~~

typings/types.d.ts:3987:9 - error TS2304: Cannot find name 'Maybe'.

3987     R = Maybe<string>,
             ~~~~~

Found 554 errors.

My codegen.yml config file:

schema:
  - http://localhost:8090/graphql
overwrite: true
config:
  contextType: ./context#IResolversContext
  mappers:
    FlightCommand: ./models/flightCommand#IFlightCommandParent
    User: ./models/user#IUserParent
    Vehicle: ./models/vehicle#IVehicleParent
    VehicleStatusMessage: ./models/vehicleStatusMessage#IVehicleStatusMessageParent
generates:
  ./typings/types.d.ts:
    plugins:
      - add: |
          /**
          * ¡THIS IS AN AUTOGENERATED FILE, DO NOT ATTEMPT TO MODIFY ☭!
          *
          * Use `yarn graphql:generate` and commit this file.
          * Optionally, pass the `--watch` flag during development.
          */
      - typescript-common
      - typescript-server
      - typescript-resolvers

If I switch back to the 0.14.5 and regenerate types it is working good.
Environment:

OS: MacOS
@graphql-codegen/...: 0.18.2
NodeJS: 11.1.0

Thank you!

Hi @dmi3y !
We changed the packages names a long time ago, please upgrade to @graphql-codegen/cli and  @graphql-codegen/typescript (and the other plugins you need). The latest version at the moment is 1.4.0.
v0.18.x is no longer maintained or developed.
If the issue is still relevant to the latest 1.4.0 please re-open.

Thanks for update, will do it 👍


Add support for attribute on struct literal field

rustfmt is currently unable to format code which uses the new (and unstable) attributes on struct fields feature. Demonstration:
$ echo '
> struct Foo {
>     foo: usize,
>     #[cfg(feature = "include-bar")]
>     bar: usize,
> }
>
> fn new_foo() -> Foo {
>     Foo {
>         foo: 0,
>         #[cfg(feature = "include-bar")]
>         bar: 0,
>     }
> }
> ' | rustfmt
error: expected identifier, found `#`
  --> stdin:14:9
   |
14 |         #[cfg(feature = "include-bar")]
   |         ^

Interestingly, the same code on the Rust playground is simply formatted to remove the #[cfg(feature = "include-bar")] annotation, producing:
struct Foo {
    foo: usize,
    #[cfg(feature = "include-bar")]
    bar: usize,
}

fn new_foo() -> Foo {
    Foo { foo: 0, bar: 0 }
}

I think this just needs us to update the parser (Syntex)