Migrate from Bower

Bower is no longer being actively developed (although it is being maintained). It should be replaced with something else e.g. Browserify, Webpack, Yarn etc.

Hi @Kaixhin, are you looking for some help for this task? I started using FGLab today and it is very useful for me. Would love to contribute.

Hi @tuzhucheng - contributions would be most welcome! If you are looking for contributions in general, I'd say test suites (https://github.com/Kaixhin/FGLab/issues/10 and https://github.com/Kaixhin/FGMachine/issues/2) are the highest priority, as it would be good to know that things actually work as expected. As linked to in those issues, I think Mocha + Instanbul + Coveralls would be a comprehensive set of tools for that (though if you ever have a case for something else you should say so). It's a large task, but anyone who can tackle those would be a coauthor for a publication coming out on this software.
If you're interested in this issue in particular then I haven't had any experience with any of the tools that I mentioned, so I believe that Webpack would be a promising choice for replacing Bower (and possibly Gulp at the same time), but would defer to someone more familiar with the current state of front-end web dev.

I'm currently interested in this issue in particular. :) I have relatively recent experience with front-end web dev and have used Webpack before. The Bower homepage recommends yarn + webpack. My understanding is Webpack is more for bundling together scripts rather than dependency management, which yarn is designed to do.
After this if I can set aside some time I'll be happy to help with the larger task - the test suites.
I'm planning to use this software for the research I'm doing in my research lab. There might arise use cases in which I might be extending FGLab in my fork. For example, I think #21 would be pretty useful. Another useful feature might be having the option to view stdout/stderr logs after re-opening the experiment after it finishes running. Would be interested in opportunities to contribute those back to the upstream repo if those are useful features that can be used by the general audience.

Yes sorry Webpack is more for bundling/building, and Yarn is a dependency manager. Bower was a fantastic front-end package manager - and that's what needs to be replaced. I don't think Yarn needs to be introduced, especially with npm 5 around now - the key is to make this easy to install for machine learning/data science users who aren't familiar with web dev ( we're a small minority and even I'm not up to date ;) ). So we should get all the front-end packages on npm, and make sure that they get picked up by the web pages - I think that Webpack or Browserify can achieve this.
Good to know :) Permanent storage of logs is a great idea! Had a quick look and MongoDB has a $push operation so it'll need some thought but appending logs in the db should be possible. And whatever else you think may be useful will probably be useful for others too.


Update permissions based on changes made in matrix auth plugin 3.0

[ ] Make sure you are opening from a topic/feature/bugfix branch (right side) and not your main branch!
[ ] Ensure that the pull request title represents the desired changelog entry
[ ] Please describe what you did
[ ] Link to relevant issues in GitHub or Jira
[ ] Link to relevant pull requests, esp. upstream and downstream changes
[ ] Ensure you have provided tests - that demonstrates feature works or fixes the issue

@joshiparth1000  This looks interesting, I would need exactly that change. Did you see the build errors in testing, would you be able to handle them?

it seems like this change is now either required, or about to be for configuring a Jenkins without getting ambiguous permissions warnings.

Hi
I'm not able to configure my job with new dis-ambiguous authorization format introduce in matrix auth plugin 3+.
job("dev/devops-ansible-rolling-update-adminsite") {
  disabled false
  authorization {
    permission("GROUP:hudson.model.Item.Build:ec2-dev-v2-adminsite-deployer-only")
    permission("GROUP:hudson.model.Item.Cancel:ec2-dev-v2-adminsite-deployer-only")
    permission("GROUP:hudson.model.Item.Read:ec2-dev-v2-adminsite-deployer-only")
  }
  using "dev/devops-ansible-template"

I got the following error when I'm trying to process the new auth perms with Job DSL plugin.

I suppose this PR was aiming to fix this configuration change.
Any chance to resume the progress on this PR?
Thanks

This is continued in https://github.com/jenkinsci/job-dsl-plugin/pull/1415


[UNDERTOW-1771] APIs deprecated in JDK 9+ are in use

https://issues.redhat.com/browse/UNDERTOW-1771
Updated from deprecated javax.security.cert Classes to current java.security.cert
Deprecated javax.security.cert APIs usage is limited to XNIO API Usage
Finalize methods not needed on (Auto)Closeables
super.finalize should always be called, and called last.
Signed-off-by: Steve Davidson<EMAIL_ADDRESS>

This intermittent failure is puzzling, especially when the failures that I was able to check are the same as https://github.com/undertow-io/undertow/pull/925, which has a completely different change.
If there is something that needs to be fixed in my submission, I will be happy to make the change.  Advice is welcome!

@gorky  thanks for your PR! It won't be added to 2.2.0.Final because I'll need some extra time to verify if dependencies are not broken, but it will be reviewed and merged soon.

The current failures seem to be the same that are occurring on the main branch.  Is this correct?

The current failures seem to be the same that are occurring on the main branch.  Is this correct?

?

Is any update available on this?

Is any update available on this?

yes @j3graham The updates were all added to the Jira. At this point, I'll see if there any pending point from the issues raised in the comments so we can finally merge this.

@gorky I am marking this as under verification because there is still work to be done on this side from myself. Even my comments I need to reevaluate now that I see that, after rebasing, there is so little left of your original code: https://github.com/undertow-io/undertow/commit/e9018caf789f1905927558372bfec9b03d041021
I am tagging Undertow 2.3.0.Beta2 without this commit but I'll revisit my comments here so we can decide how to merge the remainder of the code and what to do with the original Jira. Thanks for your hard work on this PR btw! I'll keep you posted.

The current build failures don't seem to be related to anything I changed/modified.  Is this correct or did I break something?

@gorky the easiest way to have both a clean way of viewing the changes (easier for review) and for verifying if anything is broken, is rebasing this branch against upstream/master.
However, if you are willing to accept some work already done, I have already rebased it, and it is in my branch here: https://github.com/fl4via/undertow/commits/UNDERTOW-1771_PR_REVIEW
As you can see, there is only one commit remaining, because the rest of the changes became obsolete. Feel free to use it if it is helpful, or if you prefer to rebase yourself your branch, go ahead, there is nothing like the eyes of the original coder :-)
Regarding breaking the code, ffom what I can tell, it doesn't appear that there is anything broken in the rebased branch above. I will try to run the full test on that rebased branch, once I'm done with releasing Undertow 2.3.0.Beta2. To run the full test suite, run the command: "mvn clean package  -Pproxy -Dmaven.test.failure.ignore=true -DfailIfNoTests=false -fae > output.txt"). Running it takes much longer than running mvn clean install, because the proxy profile checks other Undertow configs, the same ones that are tested by the project github actions CI.

Btw, the errors you are seeing are probably related to the fact that the code is not compatible with the java.security work done by UNDERTOW-1791 #988 @gorky

@fl4via Rebased and pushed.  I think we are good.  I'm not too concerned about how much of the original commit is left, as I have been working on a different item and was just trying to help out here a bit.


Tests

This PR adds a structure in which we can write tests, and a basic set of tests for the public API. It tests against Python 2.7 and Django 1.8 using Tox.
There are many more things that could be done here – Django 1.9 support, adding and testing migration support, Python 3 compatibility, etc, but these are saved for future PRs.

Great stuff. If you could just fix that basestring thing I'll merge.

Fixed. I'm going to try and submit a few other PRs soon so it might be worth adding Travis/Circle to the repo for testing now that there is something to run.


Unable to make it work at all

The component:
import styled from "styled-components/macro";
import { Segment } from "semantic-ui-react";

import semanticStyles from "../../../semantic/exports.module.less";

export const BlueSegment = styled(Segment)`
  background-color: ${semanticStyles.mediumBlue} !important;
  inverted: true;
`;

The config:
rule.options.plugins.push([
            "@quickbaseoss/babel-plugin-styled-components-css-namespace",
            {
                "cssNamespace": "#root"
            }
        ]);
        rule.options.plugins.push("babel-plugin-styled-components");

Outputs:

.iaCJEB {
    background-color: #026fad !important;
    inverted: true;
}

So I cant override semantic-ui styles :(

Are you seeing this issue with regular components or does it only affect those imported from semantic-ui-react?  (e.g., does
styled.div`background-color: blue;`

get the namespace?)
We don't yet have support for babel-macros and I think that may be the cause of this particular issue, but more info would help determine if that's the case.

@nvanselow
import styled from "styled-components";

const Subscript = styled.span({
  color: semanticStyles.lightBlue,
  fontSize: "0.8em"
});

results in:

штук


1291 auto dismiss toast manual dismiss behaviour

Summary of the changes
Update auto dismiss toast to turn manual when hovered over. Add empty description to auto dismiss
loading indicator so that "loading" isn't read out to a screen reader
BREAKING CHANGE: Behaviour change to auto dismiss toasts to show dismiss button when toast is
hovered over. May cause test breakages.
Related issue
#1291
Checklist
General

[x] Changes to docs package checked and committed.
[x] All acceptance criteria reviewed and met.

Testing

[x] Relevant unit tests and visual regression tests added.
[x] Visual testing against Figma component specification completed.
[x] Playground stories in React Storybook up to date, with any prop changes and additions addressed.

Accessibility

[x] Accessibility Insights FastPass performed.
[x] A11y unit test added and yields no issues.
[x] A11y plug-in on Storybook yields no issues.
[x] Manual screen reader testing performed using NVDA and VoiceOver.
[x] Manual keyboard testing for keyboard controls and logical focus order.
[x] Correct roles used and ARIA attributes used correctly where required.
[x] Logical heading structure is maintained, and the HTML elements used for headings can be changed to fit within the wider page structure.

Resize/zoom behaviour

[x] Page can be zoomed to 400% with no loss of content.
[x] Screen magnifier used with no issues.
[x] Text resized to 200% with no loss of content.
[x] Text spacing increased as per the WCAG 1.4.12 success criterion with no loss of content.

System modes

[x] Browser setting 'prefers reduced motion' tested. No animations or motion visible whilst this setting is on.
[x] Windows High Contrast mode tested with no loss of content.
[x] System light and dark mode tested with no loss of content.
[x] Browser support tested (Chrome, Safari, Firefox and Edge).

Testing content extremes

[x] Min/max content examples tested with no loss of content or overflow.
[x] All prop combinations work without issue.
[x] Tested for FOUC (Flash of Unstyled Content) in both SSR (Server-Side Rendering) and SSG (Static Site Generation) settings.
[x] Controlled and uncontrolled input components tested.

a bit of strange issue using auto-dismiss example:

click the button to show the toast
tab so that the x appears and gets focus
click elsewhere on page (or mouse over the toast & then off again) - it goes back to a countdown indicator
now try to press tab to focus again - the x button never displays the focus indicator


Add config material color

modpack/user change color to easy to distinguish
or to apply to resource pack


Issue with certificates and token generation

Issue description

issue description: When running init_workspace for the mnist pytorch example two errors occur when the script attempts to start the Swam Network node. The first is an illegal option caused by hostname, it appears to be due to the hostname command on macOS not having an -I flag.

The second occurs right after the first, it seems to be that a specific version of libressl is expected, although even with libressl installed, the expecte directory does not exist.

I am running ./mnist-pytorch/bin/init-workspace -e $EXAMPLE -i $APLS_IP -d $WORKSPACE_DIR with environmental variable set as follows:
export APLS_IP=https://xxxxxxxxxxxx.ngrok.io
export EXAMPLE=mnist-pytorch
export WORKSPACE_DIR=$PWD
Spire container logs show no errors, there are not logs for Swarm Network node container as it does not start.
OS and ML Platform

details of host OS: macOS Monterey 12.0.1
details of ML platform used: N/A
details of Swarm learning Cluster (Number of machines, SL nodes, SN nodes): As defined by mnist-pytorch example.

Quick Checklist: Respond [Yes/No]

APLS server web GUI shows available Licenses? Yes
If Multiple systems are used, can each system access every other system? N/A
Is Password-less SSH configuration setup for all the systems? N/A
If GPU or other protected resources are used, does the account have sufficient privileges to access and use them? N/A
Is the user id a member of the docker group? N/A

Additional notes

Are you running documented example without any modification? Yes
Add any additional information about use case or any notes which supports for issue investigation: Had a few minor issues with missing commands such as shopt. These were overcome by switching for zshell to bash and installing coreutils via Homebrew.

Thank you for your time, any fixes or advice would be greatly appreciated :)

Swarm is qualified to work with Ubuntu OS only. Please refer below issue for more details.
Issue 56

Closing this issue as this issue reported outside swarm qualified OS.


Cannot assign requested address

Hi,
I tried to change the bind socket IP adress in server.rs to my local server IP address to deploy quiche server locally. But I got the error of:
thread 'main' panicked at 'called Result::unwrap() on an Err value: Os { code: 99, kind: AddrNotAvailable, message: "Cannot assign requested address" }', examples/server.rs:71:18

Is the requested address actually assignable? What is the change that you made?

Hi, yes, it is assignable, I tested it with other quic implementations. All I did was changing the bind address in the example code server.rs, line 71: let socket = net::UdpSocket::bind("<IP_ADDRESS>:4433").unwrap(); changing it to our server address "<IP_ADDRESS>:4433".

Is <IP_ADDRESS> the IP of the machine you're testing this on? Is anything else already listening when you're testing?

Yes, it's the address of one of the interfaces. No, there wasn't anything else listening. Maybe the way I run the code was not corret?
I type in the command ./server in the /target/debug/examples/ directory after changing the code server.rs in /examples/ directory. Or is there any other way to deploy quiche you suggest?

I can only reproduce your problem if I attempt to bind to an address that my machine does not own. Maybe something else is happening but this is a pretty fundamental socket call and nothing quic related.
I recommend just running ./target/debug/examples/server from the quiche directory

Closing due to inactivity. Please reopen if there is more information.


gh/workflow: Remove specific GKE 1.24.5 version

This commit removes specific GKE versions from 3 workflows. Version 1.24.5 is no longer available and makes tests fail. Instead, we use 1.24 which will use the default version of GKE.
Resolves: #23153
Signed-off-by: Birol Bilgin<EMAIL_ADDRESS>

Changing the version to 1.24 works, and clusters were provisioned. The conformance test ultimately failed but I do not think it is related.
https://github.com/cilium/cilium/actions/runs/3950852563/jobs/6763977229
https://github.com/cilium/cilium/actions/runs/3950852546/jobs/6763976653

Given that this gets us past the "cluster deploy" stage and will fix CI for upcoming releases, I think it's OK to merge as-is. Please do follow up on the other failures to get GKE green in general.


[question] should we model gender like a vocabulary

we may want to have the Person.gender field in similar shape as occupations, i.e. { id: string; label: InternationalizedLabel }
as a query param, we may want to allow gender?: Array<Gender[id]>

yes, good point

also needs to be changed for the gender query param to accept any gender id, not the 3-value enum?

thats true. due to consistency with the other params I'll add a separate gender_id param

fixed in 206d5db97f37ad443c4dd0ea3490d8c41282569b; wrong issue id in the commit message

still confused by this:

where does the enum apply?

the enum is still accepted by the gender parameter, the gender_id param accepts any gender_id (any URI as used in the triplestore), eg http://ldf.fi/schema/bioc/Male

so what happens when a query provides ?gender=female - what field gets searched? gender.label?

basically yes, but technically the enum is a map between uris and strings which is hardcoded in the backend server. So, the sparql uses the URI that is mapped to female, but URI -> rdfs.label == "female". This is probably not ideal as in case of changes the labels need to be changed in the data and the server. I'll give that another thought

No. That enum gets translated into the correct Uri and that is used in the sparql query. But speaking from the Json return Format, yes its gender.label
Am 22. Juli 2022 10:02:45 MESZ schrieb stefanprobst @.***>:

so what happens when a query provides ?gender=female - what field gets searched? gender.label?
--
Reply to this email directly or view it on GitHub:
https://github.com/acdh-oeaw/InTaVia-Backend/issues/17#issuecomment-1192297802
You are receiving this because you modified the open/close state.
Message ID: @.***>


[BEAM-11707] Change WindmillStateCache cache invalidation to be based…

… upon
reference invalidation instead of expensive set management. Reduce
operations of shared cache by caching per-key object sets locally and
flushing as groups to shared cache. Remove byte tracking which could
be racy based upon background evictions in favor of just iterating
for rendering the status page. Since we render only once every 10 minutes
by default this seems fine.
This also lets us capture more stats.
This previously showed up as 6% cpu on benchmarks and dropped to 1.25% with this change with throughput increase as well.

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

[ ] Choose reviewer(s) and mention them in a comment (R: @username).
[ ] Format the pull request title like [BEAM-XXX] Fixes bug in ApproximateQuantiles, where you replace BEAM-XXX with the appropriate JIRA issue, if applicable. This will automatically link the pull request to the issue.
[ ] Update CHANGES.md with noteworthy changes.
[ ] If this contribution is large, please file an Apache Individual Contributor License Agreement.

See the Contributor Guide for more tips on how to make review process smoother.

GitHub Actions Tests Status (on master branch)

See CI.md for more information about GitHub Actions CI.

R: @dpmills @reuvenlax

friendly ping

@reuvenlax PTAL thanks!

run dataflow valiatesrunner

Run Dataflow ValidatesRunner

Run Java PostCommit

This appears to break https://ci-beam.apache.org/job/beam_PostCommit_Java_ValidatesRunner_Dataflow_PR/361/testReport/junit/org.apache.beam.sdk.transforms/ParDoTest$StateTests/testOrderedListStateRangeDeleteUnbounded/

I'm not exactly sure why this isn't triggering already but I believe the issue can occur with the IdTracker possibly writing empty maps here:
https://github.com/apache/beam/blob/3bb232fb098700de408f574585dfe74bbaff7230/runners/google-cloud-dataflow-java/worker/src/main/java/org/apache/beam/runners/dataflow/worker/WindmillStateInternals.java#L767
Then if a read is performed and it is not cached, there is a non-null encoded value (mapcoder encodes size) and then an EmptyMap is coming from MapCoder:
https://github.com/apache/beam/blob/7c43ab6a8df9b23caa7321fddff9a032a71908f6/sdks/java/core/src/main/java/org/apache/beam/sdk/coders/MapCoder.java#L111
Since the creation of the maps only looks if null is returned, the EmptyMap is possibly inserted into
https://github.com/apache/beam/blob/3bb232fb098700de408f574585dfe74bbaff7230/runners/google-cloud-dataflow-java/worker/src/main/java/org/apache/beam/runners/dataflow/worker/WindmillStateInternals.java#L702
I think the IdTracker should delete the values if the maps are empty instead of caching empty maps.

Run Dataflow ValidatesRunner

Run Java PostCommit


Skeleton dev3

Hold off on merging this. I'm adding a version check against the server for compatibility with the previous GET method.


feat: add isVisible to VirtualItem

This PR adds isVisible property toVirtualItem, making it easy to find what items are in viewport.

@tannerlinsley what do you think about this one? Having isVisible allows for example, implementing scroll sync to visible item between two lists with different content etc.


SyntaxError: invalid identity escape in regular expression - Firefox

Environment:

Browser name and version/Node version: Firefox 74

Platform
[ ] nodeJs
[x] Web/Browser
Issue description:
On js load it throws an error on Firefox:
SyntaxError: invalid identity escape in regular expression
On Chrome it's working well.
This is because Firefox does not support Unicode Property Escapes yet (an ES2018 feature), like \p{M}.

It seems to be a bug of Firefox, bugfix will be released on v.76
https://bugzilla.mozilla.org/show_bug.cgi?id=1620020
Since marker removal is a feature of the library, I'll release a version with a fix which disable this regex on unsupported environments


Minor error message improvements + ComponentRemoved Signal

Small readability improvement on error message for people who don't read the documentation 😛 like me.

The current ECS system is able to detect entities with the proper archtypes with the OnEnter system event, However the OnRemove only fires when the entire entity is removed.
This should be a quick fix to detect when the component is removed from an entity, though it might be tricky to manage the signal and disconnecting it properly but should be doable.

Sorry for the delay, I'll try to review it tomorrow, I confess that I still don't understand the use of Signal.

@datlass The problem was solved in the v1.2.2  https://github.com/nidorx/roblox-ecs/releases/tag/v1.2.2, with the addition of the OnExit method. The OnRemove method remains invoked when an entity is removed from the world
This new method works in conjunction with OnEnter, allowing the system to be informed when the entity has undergone changes that no longer satisfy the system filter.
In the example below, I have a TAG component called ControlsDisabled, whenever my local entity receives such a component (world.Set(entity, ControlsDisabled)), the system below blocks the player's control.
After removing this component from the entity (world.Remove(entity, ControlsDisabled)) the system re-enables local player control

local ControlsDisabled = ECS.RegisterComponent('ControlsDisabled', nil, true) -- tag component

local Controls

return ECS.RegisterSystem({
   Name  = 'ControlsDisabled',
   Step  = 'process',
   Order = 10,
   RequireAll = {
      Player,
      LocalPlayer,
      ControlsDisabled
   },
   OnEnter = function(time, world, entity, index, players, localPlayers, controls)
      local player = players[index]

      Controls = require(player.Player.PlayerScripts:WaitForChild("PlayerModule")):GetControls()

      Controls:Disable()

      return false
   end,
   OnExit = function(time, world, entity, index, players, localPlayers, controls)

      Controls:Enable()

      return false
   end
})


Support to InteractiveYCoordinate

I'm submitting a...

[ ] bug
[X] feature
[ ] chore

What is the current behavior
It seems that there's no documentation on how to make InteractiveYCoordinate work and all my tests failed so I'm assuming it is not supported yet.
I currently see a "TypeError: Cannot set property 'priceCoordinate' of undefined" Error.
What is the expected behavior
Boxes for items like orders or dynamic supports and resistances.
Please see example below:

Please tell us about your environment

OS: Windows 10
React: ^17.0.1
react-financial-charts: "^0.5.1
Browser: [all]

Other information

Hey, yes it should work fine with the latest alpha versions, there's a ton of fixes. Please try with 1.0.0-alpha.16

It worked like a charm! Big and cool changes! Thanks for keeping this repo alive!


Fix configs for API URL

#8  👈
main

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

Join @vegarsti and the rest of your teammates on  Graphite


Clarify and expand how to generate and convert your ssl certificate to Java KeyStore

Clarify and expand how to generate and convert your ssl certificate to Java KeyStore

Thanks!


One point graph

What's this PR do?
In this PR I check to see if we only have one point of data, and if so explicitly draws that point on the graph. I also added some sanity checks on the backend side of things to see make sure we even have data to pass to the frontend. I was seeing errors in the drupal log when we were trying to send variables in the json that weren't defined because the there was no data for that campaign.
Where should the reviewer start?
I suggest starting in HotModule.js. The hasOnePoint() function does the testing and then on line 300, we do the actual drawing of the point.
How should this be manually tested?
Create new campaign and launch it in the hot phase, then generate some reportbacks on it and run cron. Then check to see if the graph shows just the one progress point. Compare that to another campaign with more data to make sure we see the pretty line graph.
Any background context you want to provide?
This PR solves an issue we were seeing with the hot module graph when there was only one point of data. This would pop up, for example, when a new campaign is launch in the hot phase and starts getting reportbacks that day. It seems that issue is that the graph is a line graph, and it expects at least two points on the graph to draw a line between.
What are the relevant tickets?
Fixes #4925
Screenshots (if appropriate)
ONE POINT!

Questions:

Is there a blog post? Nope
Does the knowledge base need an update? NOOOOPPE
Does this add new (Python) dependencies which need to be added to chef? Python? What's that?

@DoSomething/front-end

This is a powerful pull-request. :muscle:

notable PR. WHAT IS PYTHON

:snake: :interrobang:


Add reactive attributes

This PR implements reactive widget attributes. Attributes are stored in a YMap in the Widget. This means that attributes can be created (and synced) dynamically, there is no need to declare them ahead of time. A local widget (typically in the kernel) can set attributes that a remote widget (typically in the browser) is not even aware of, and the remote widget will discover them at run-time. But of course nothing prevents declaring attributes ahead of time, as class attributes.
cc @martinRenou @trungleduc @SylvainCorlay

Yes, you could still create whatever structure you want from _ydoc, and it should still work. But you wouldn't be able to use the feature described above. I think this is fine, as it would allow to do simple things easily, and allow for more complex documents.

I created reacttrs, which consists of reactive attributes extracted out from Textual. I added an on_set callback which is used here to send Y updates over Comm when setting an attribute. The API is the following (see Textual's documentation):
class MyWidget(Widget):
    foo = reactive("my_value")
    bar = reactive(my_function)  # for dynamic defaults

    def watch_foo(self, old, new):
        # called when foo changes
        ...

    def validate_foo(self, value):
        # called when setting foo
        ...
        return value

    def compute_foo(self):
        # called when getting foo
        ...
        return value

The (optional) watch_, validate_ and compute_ methods are followed by the attribute name. It could be interesting to follow this API.
Thoughts?

Cool!

The (optional) watch_, validate_ and compute_ methods are followed by the attribute name. It could be interesting to follow this API.

I really like that you separate watch/validate/compute. Could validate and compute be implemented using the official setter and getter for attributes?
I like the syntactic sugar of using decorators in Traitlets for such things as validators and watchers. Maybe watch could be a decorator as well?

I really like that you separate watch/validate/compute.

I didn't do that, Textual does: https://textual.textualize.io/guide/reactivity.

Could validate and compute be implemented using the official setter and getter for attributes?

Mmm not sure to see what you mean, they are used in get and set.

I like the syntactic sugar of using decorators in Traitlets for such things as validators and watchers. Maybe watch could be a decorator as well?

Well it's just another syntactic sugar here, with a bit more magic since you don't need the decorator. I personally prefer Textual's API over Traitlets'.

Mmm not sure to see what you mean, they are used in

I mean using official:
@property
def foo(self):
    return ...

@property.setter
def foo(self, value):
    ...

with a bit more magic since you don't need the decorator

That's what I don't like about it, explicit is better than implicit. That's too magical.

I don't think @property and @foo.setter work with the descriptor protocol.

explicit is better than implicit

But Textual is better than Traitlets :smile:

This PR works with the example in yjs-widgets, and this in a notebook:
from ypywidgets import Widget, reactive

class MyWidget1(Widget):
    foo1 = reactive("foo1")
    bar1 = reactive("bar1")

w1 = MyWidget1()
#
w1
# widget output shows "hello from my widget" (set from the frontend)
w1.foo1 = "foo2"
# shows "foo2" in the widget output
w1.foo1 = "foo3"
# shows "foo3" in the widget output
w1.bar1
# prints "'abc'" (set from the frontend)

If we were to change the magic watch_foo method, what would be the preferred API?
I don't really like Traitlets' API, which is also kind of magic with the attribute name as a string:
class Foo(HasTraits):
    foo = Int()

    @observe('foo')
    def _observe_foo(self, change):
        ...

Let's merge for now, we can always revisit the API in the future.


refactor: use prettier to enforce JavaScript and Markdown formatting

Fixes #96
I made all the suggested changes and formatted all files in the src directory. It formatted our generated files and some minified lib files in the src/web directory, so I added a .prettierignore file to disable that. Markdown files and JSON spec files also got reformatted. I ran the model tests afterwards and all still pass.

Looks good — are we ready to merge this?


Add loadModelFromLocalFile() method to XGBoost in spark

This would be helpful when testing spark pipelines with XGBoost when running spark locally. Necessity to have the model stored in the HDFS makes things inconvenient.

nvm I just realized loadModelFromHadoopFile does the trick. Oops!


Inconsistency in the Preservation Hold Library documentation

Regarding this verbiage:
You can view this library on the Site contents page in the top-level site of the site collection. Most users can't view the Preservation Hold library because it's visible only to site collection administrators.
There is no documentation on how to find the PHL through the GUI.  I was able to document how to navigate through the GUI, and also by changing the URL.  These two tactics behave differently.  Navigating through the GUI only provides access to to PHL for SharePoint or Global admin role.  However, changing URL allows user to actually get access, since the user is the site collection administrator.  I created a document on this and can provide it.
Michael Wiley
Microsoft Sr. Customer Engineer
MSFT alias: micwil
Locating the Preservation Hold Library using the GUI.pdf

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

ID: 36b54827-f642-4c77-7cfe-64e8c2a1d1d9
Version Independent ID: 67dffecf-4da7-864d-5c10-9b55740f32cd
Content: Learn about retention for SharePoint and OneDrive - Microsoft 365 Compliance
Content Source: microsoft-365/compliance/retention-policies-sharepoint.md
Service: o365-seccomp
GitHub Login: @cabailey
Microsoft Alias: cabailey

I will follow up on this.

@mkwiley  Thanks for flagging that the navigation instructions no longer worked for SharePoint.  Always a challenge when they move things around!  But after discussing this with engineering, rather than update the navigation instructions, we've removed them.  The Preservation Hold library is designed for automatic processes for compliance requirements rather than interactive use, and you can expect changes in the future that will make it hidden.

Thanks for the info!
From: Carol Bailey @.>
Sent: Wednesday, September 29, 2021 7:51 PM
To: MicrosoftDocs/microsoft-365-docs @.>
Cc: mkwiley @.>; Mention @.>
Subject: Re: [MicrosoftDocs/microsoft-365-docs] Inconsistency in the Preservation Hold Library documentation (#6402)
@mkwiley https://github.com/mkwiley  Thanks for flagging that the navigation instructions no longer worked for SharePoint. Always a challenge when they move things around! But after discussing this with engineering, rather than update the navigation instructions, we've removed them. The Preservation Hold library is designed for automatic processes for compliance requirements rather than interactive use, and you can expect changes in the future that will make it hidden.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub https://github.com/MicrosoftDocs/microsoft-365-docs/issues/6402#issuecomment-930628155 , or unsubscribe https://github.com/notifications/unsubscribe-auth/AB62QBUW2XQ6Y3XHP35I5ZLUEOQ57ANCNFSM5ESD6QUQ .
Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675  or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub .   https://github.com/notifications/beacon/AB62QBTQ5MJ4J5MDLKHXLYLUEOQ57A5CNFSM5ESD6QU2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOG54EEOY.gif


In Technical Report

How did you proceed with DPO learning?
Using CPMTrainer, or HF DPOTrainer?
Does CPM Trainer support DPO finetuning?

We write the training code based on the RLAIF-V project. The code implement a trainer for DPO by itself.

thank you for your answer! i have 1 more question, Can I apply wsd scheduler in This repo's finetuning code?

Hello! By any chance, could you point me to the code you used for MiniCPM-V DPO learning? Thank you and greatly appreciate it.


Not working in Browser

I'm getting the following error in the console.
Uncaught (in promise) Error: ws does not work in the browser. Browser clients must use the native WebSocket object

Hopefully this answers your question
https://stackoverflow.com/questions/29741158/how-to-use-websocket-npm-library-in-browser
You mightn't be able to run this in the browser without some modifications, or figuring out a way to browserify this library.

I uncommented the require of 'ws' and it works when I comment line 60 out in connection.js (this.ws.on) because that line throws some kind of an exception it seems

Which exception? Got the error log for that?
It does make sense uncommenting the require of 'ws'. Browsers have a native implementation of the WebSocket class.  It sure does look like it. If so, don't rely on the error code line number too much, it might be off by a bit.
Since the call error is referencing .on() could it actually be https://github.com/askmike/deribit-v2-ws/blob/3a350198b514b4daa1839bc74fa5c26525d3f35f/connection.js#L58 this line?
idk I'm just guessing.

Nothing that I'm aware of... but maybe.
The line number is ok, because if I remove
this.ws.on('error',this.handleError)`
then it works perfectly

Well, great! That's line 58 thought, not 60 like you said. :)
It seems to be an issue with the native browser WebSocket class.
Anyways, @askmike is there a reasoning why the error handler function is getting registered two different ways in the first place?
I see
https://github.com/askmike/deribit-v2-ws/blob/3a350198b514b4daa1839bc74fa5c26525d3f35f/connection.js#L57
And in the next line I see
https://github.com/askmike/deribit-v2-ws/blob/3a350198b514b4daa1839bc74fa5c26525d3f35f/connection.js#L58
Maybe the first one should do the trick anyways? ^^°

In my file it's line 60, but maybe prettier did some reformatting. :)
Thanks for your your quick responses. Really appreciated!

@lacksfish

Anyways, @askmike is there a reasoning why the error handler function is getting registered two different ways in the first place?

No good reason, just legacy. Can be cleaned up if anyone cares.
@Quenos this library is not designed for browser use. It might work in some browsers after flipping a few things (like the ws lib), but overall I can't really guarantee it will keep working. I (and many) use this lib in the backend in nodejs for trading.

No good reason, just legacy. Can be cleaned up if anyone cares.

Will do :)


Establish Communication Between Pi and Server

Configure the Pi and Flask server to communicate over WiFi (HTTP, Web Socket ? for video streaming)

This is done, the pi is communicating with the server over http.


Use random buildinfo in cloud_deploy

This is a temporary workaround to some bad UX from partial uploads to bindle.
Signed-off-by: Lann Martin<EMAIL_ADDRESS>

Tested locally


Verisure: Can't arm / disarm alarm through HomeKit

Hey guys
Everything works perfectly with my Verisure alarm system through Home Assistant and it also appear in the Apple Home App, but I can't arm / disarm the alarm through the Apple Home App?
I think I need to give HomeKit an arm code?
Please help me :-)
Thanks!

Oh thank you very much, i’ll give that a try!

Thanks @shred86 for the help!
I'll go ahead and close this issue then.


[FLOC-4427] Return the same object more often.

With larger and larger pyrsistent objects it becomes even more important to get the exact same object back from transformations and calls to set if they could be no-ops so that the __eq__ optimization is hit more frequently.
I saw increased CPU time in pmap.eq despite the hash optimization in Pmap.eq which suggested to me that objects that had the same hash, but were not the exact same object were being compared. This seems to have made the problem decrease in severity.

Still just 27 branches missed - no regression in code coverage.

LGTM
I got a local test failure, but I can't see it in the travis results.
(4427) (FLOC-4427-fast-transformations ? =)[~/.../HybridLogic/pyrsistent]$ py.test
====================================================================================== test session starts ======================================================================================
platform linux2 -- Python 2.7.11 -- pytest-2.3.5
plugins: hypothesis
collected 578 items / 1 skipped

tests/bag_test.py ...............................
tests/checked_map_test.py ..................
tests/checked_set_test.py ............
tests/checked_vector_test.py .......................
tests/class_test.py ........................................E
tests/deque_test.py .....................................
tests/freeze_test.py ................
tests/hypothesis_vector_test.py ...
tests/immutable_object_test.py .......
tests/list_test.py .....................................
tests/map_test.py ...........................................
tests/record_test.py ..........................................................................
tests/regression_test.py .
tests/set_test.py .....................
tests/transform_test.py ................
tests/vector_test.py ......................................................................................................................................................................................................

============================================================================================ ERRORS =============================================================================================
_____________________________________________________________________________ ERROR at setup of test_enum_key_type ______________________________________________________________________________
Error evaluating 'skipif' expression
    True
Failed: expression is not a string

Yea, I didn't add any skipifs so that looks unrelated. Think I'll just merge this as-is.


HLSL SV_InstanceId not supported in pixel shader

The following shader fails to compile:
struct PSInput
{
    uint vInstance : SV_InstanceID;
	float4 color : COLOR;
};

float4 MainPs(PSInput input) : SV_TARGET
{
	return input.color + float(input.vInstance).xxxx;
}

with output:
slangc.exe sv_instance.hlsl -o sv_instance.hlsl.spv -profile glsl_450 -entry MainPs -enable-effect-annotations -stage fragment -fvk-b-shift 0 0 -fvk-s-shift 14 0 -fvk-t-shift 30 0 -fvk-u-shift 158 0 -dump-intermediates
glslang:  sv_instance.hlsl(7): error :  'gl_InstanceIndex' : undeclared identifier
glslang:  sv_instance.hlsl(7): error :  '' : compilation terminated
glslang: note : ERROR: 2 compilation errors.  No code generated.

This can be worked around by passing the SV_InstanceID from VS -> PS.

This is a GLSlang limitation, and we will need to wait until the SPIRV backend is ready before we can fix this issue.

Putting in Q2 since we're trying to get spirv backend stable in Q1, then we can get to this after

DXC generates this:
               OpCapability Shader
               OpMemoryModel Logical GLSL450
               OpEntryPoint Fragment %MainPs "MainPs" %in_var_SV_InstanceID %in_var_COLOR %out_var_SV_TARGET
               OpExecutionMode %MainPs OriginUpperLeft
               OpSource HLSL 600
               OpName %in_var_SV_InstanceID "in.var.SV_InstanceID"
               OpName %in_var_COLOR "in.var.COLOR"
               OpName %out_var_SV_TARGET "out.var.SV_TARGET"
               OpName %MainPs "MainPs"
               OpDecorate %in_var_SV_InstanceID Flat
               OpDecorate %in_var_SV_InstanceID Location 0
               OpDecorate %in_var_COLOR Location 1
               OpDecorate %out_var_SV_TARGET Location 0

There is no special Builtin decoration applied, so my understanding is that the vertex shader still needs to write instanceID explicitly as a vertex output for this shader to work. So this is not really simplifying anything in the user code.
@danginsburg Am I missing anything here?

There is no special Builtin decoration applied, so my understanding is that the vertex shader still needs to write instanceID explicitly as a vertex output for this shader to work. So this is not really simplifying anything in the user code.

Right, it's just that DXC/fxc allow SV_InstanceID to be used as a PS input semantic when it is passed from the VS.  It's something HLSL allows, but I worked around it locally by changing:
struct PS_INPUT
{
	float4 vPositionPs : SV_Position;
	float3 vPositionWs : TEXCOORD0;
	uint nInstanceID : SV_InstanceID;
};

to:
struct PS_INPUT
{
	float4 vPositionPs : SV_Position;
	float3 vPositionWs : TEXCOORD0;
	nointerpolation uint nInstanceID : TEXCOORD1;
};

It's not an important feature but is something HLSL allows.


Add shell completion

Is your feature request related to a problem? Please describe.
I would love shell completion for all Lagoon CLI commands and arguments.
Describe the solution you'd like
I believe Cobra has basic support for this
lagoon completion zsh > /tmp/lagoon.sh && source /tmp/lagoon.sh

However, this does not list the arguments from what I can tell.
It would also be nice to have documentation about this, perhaps around the installation instructions.

Huh, completion must have snuck in when I upgraded cobra a while back. Will need time to investigate, there may be limitation to what cobra provides, or how we do things that prevent it from working as intended.

It seems to do arguments for me with bash? perhaps a zsh thing?

If I type:
$ lagoon ad

...and then press tab, I get
-bash: _get_comp_words_by_ref: command not found

HTH,

I can't reproduce that behaviour, it works fine for me, so not sure where to even start here. Did your completion script get truncated, or are you sourcing it properly?
The shell completion scripts are not controlled by the lagoon-cli, but by cobra the underlying command library we use. So if there is a bug there, then I can't really help much.

@tnelson-doghouse Shell completion in bash relies on functions defined in the bash-completion library. I guess either you don't have bash-completion installed (that's what the package is called on Debian, not sure for other OS), or your .bashrc is missing this snippet.

Thanks @smlx !  Works for me now.
For the record, on Fedora I did:
sudo dnf install bash-completion

So it seems the remaining issues here are:

@seanhamlin can you confirm that you have the equivalent of bash completion installed and it still doesn't work?
Does the doco still need work here?

HTH,

+1 for better support (on ZSH)


Allow to configure the username for slack notifications

Fixes #56

Thanks for your pull request

@whs Can you release a new version with this feature?

Sorry for the wait. Version 4.2.0 has been released on Docker Hub


Update hot-module-replacement.md

add the '`',abide by the grammar

It will be fixed with d0791ac of #1562. And this is a PR after the PR, is this a coincidence?

It will be fixed with d0791ac of #1562. And here is a PR after that PR, is this a coincidence?

@pierreneter good catch, I just merged the other so let's close this. Thanks anyway for your contribution @AlenQi!


User can use higher level API to submit jobs via client

Currently there is a lot of boiler plate code involved with submitting a job using the Genie client. A further abstraction to allow simpler job submission could be beneficial.

Related to #162

Fixed in 3.0.


Using Kitt_AI instead of Sensory

I'm going crazy.
I follow these instructions Raspberry Pi Quick Start Guide with Script.
How can I just switch to KITT_AI?
I've looked at all kinds of instructions, but somehow I can't handle it.
e.g. Raspberry Pi Quick Start Guide (https://github.com/alexa/avs-device-sdk/wiki/Raspberry-Pi-Quick-Start-Guide Build Options).
can someone help me in a simple and understandable way?
Thanks a lot

Hi fraeggle,
In order to be concise, the Raspberry Pi guide simply tells you to use Sensory.
If you want to use Kitt.AI instead, you need to run cmake again. I recommend creating another build folder for that since /home/pi/sdk-folder/sdk-build will already have everything configured for Sensory.
See the instructions for Kitt.AI for more details.
In short, you need to:
1. Create a new build directory

2. Download [Kitt.AI](https://github.com/Kitt-AI/snowboy/)

3. [Install the BLAS library](https://github.com/alexa/avs-device-sdk/wiki/Build-Options#kittai) (Kitt.AI dependency).

4. Call `cmake` again on the new build directory passing the arguments: `-DKITTAI_KEY_WORD_DETECTOR=ON -DKITTAI_KEY_WORD_DETECTOR_LIB_PATH=<absolute-path>/snowboy-1.2.0/lib/libsnowboy-detect.a -DKITTAI_KEY_WORD_DETECTOR_INCLUDE_DIR`

Do not use the Sensory arguments on the cmake command above.
I will close this ticket, but please feel free to let us know if you need more guidance.
Thank you,

Currently Kitt.Ai has shut down their website and documentation on the configuration for raspberry pi . Is there any detailed steps to use Kitt.Ai with AVS on the raspberry pi ?


Multi tenant

Fixes #54
- Summary
Add multi-tenant support. Changes config to environment variables only.
- Test plan
Existing tests pass. A few tests/assertions added.
- Description for the changelog
Add multi-tenant support.

LGTM


Picked dates are timezone agnostic

Currently datepicker (inadvertently?) gives one a date set to the beginning of day in the users current local timezone. I. e. if you live in GMT+2 the moment will be set to two hours before the beginning of day in UTC.
Currently the only way to avoid this is to initialize the object with a moment object that is e. g. set to UTC like passing Moment.utc(); as selected.
I need the user to pick a UTC date and to show him an empty field if he hasn't done, so the above workaround is not an option.
Would it be possible to add a utc flag to the options that forces react-datepicker to interpret and return dates only based on utc so that I can do timezone conversion outside if I wish to?

Hey @lgrapenthin, it's very much intentional that the date is at the beginning of the day (since the component is time-agnostic it's the only thing that really makes sense).  If we were to add an option it would probably be better to specify an offset rather than a UTC flag (docs), but another possible workaround is to set UTC globally with moment.utc() (docs) to make the empty case work.

This is why the picker being timezone agnostic highly irritates me:

The component is supposed to let the user pick a calendar date, not a point in time. A calendar date is defined by Wikipedia as reference to a particular day within a Calendar system.

Being able to pick a calendar date is the minimum requirement to any datepicker. Everything else, like adding daytime, casting timezones etc. can be done without a datepicker. If the datepicker also has such capabilities that is great, but it shouldn't make this minimum usecase anymore difficult.

At the time react-datepicker makes this very difficult by forcing one to convert the picked date from the users local timezone back.

Whether the fact that users pick dates in different timezones is relevant to the meaning of the date picked entirely depends upon on what kind of information that date is supposed to specify and as such should be users choice.

Consider a birthday - Daytime has no meaning in this context. You don't know in what timezone the user was born, just the one in which he tells you about it. Yet you bake this into the default.

I. e. consider user1 has picked his m1 in USA, user2 has picked his m2 in GER, both via react-datepicker - Only knowing each users local timezone allows me to determine the calendar dates those users meant when they picked them in the UI.

This is why the picker being timezone agnostic highly irritates me:

The component is supposed to let the user pick a calendar date, not a point in time. A calendar date is defined by Wikipedia as reference to a particular day within a Calendar system.

Being able to pick a calendar date is the minimum requirement to any datepicker. Everything else, like adding daytime, casting timezones etc. can be done without a datepicker. If the datepicker also has such capabilities that is great, but it shouldn't make this minimum usecase anymore difficult.

At the time react-datepicker makes this very difficult by forcing one to convert the picked date from the users local timezone back.

Whether the fact that users pick dates in different timezones is relevant to the meaning of the date picked entirely depends upon on what kind of information that date is supposed to specify and as such should be library users choice.

Consider a birthday - Daytime has no meaning in this context. You don't know in what timezone the user was born, just the one in which he tells you about it. Yet react-datepicker merges those two facts of which only one is desired information into one piece of data: A moment object set to the users birthday in the timezone he recited it. Why would I want this?

I. e. consider user1 has picked his m1 in USA, user2 has picked his m2 in GER, both via react-datepicker - Only knowing each users local timezone allows me to determine the calendar dates those users meant when they picked them in the UI.

Hey @lgrapenthin, I'm very much familiar with the purpose of a date picker, but if this behavior "highly irritates" you, please submit a fix; lecturing us with a tone like that without any inclination for contributing a fix isn't going to get you much sympathy.  In my original reply I attempted to give you a workaround** and I told you what I think the fix should look like.  Unfortunately the default behavior has caused you grief, but it is within your power (yes, you!) to help yourself and all the other consumers of this component.
** Looks like you would actually need moment timezone to set the global timezone

@rafeememon I am truly sorry if my comment offends you, which was not my intent at all. I haven't addressed you directly as my comment was not a direct response to yours. I have had time today to think about the issue more deeply and aside from improving the title I took a bit time to research the issue and provided additional arguments why the current default behavior can appear as highly irritating and an opt-out would be desired. Please consider those as a contribution instead of a lecture you were not asking for.
I don't see why you'd want me to program something before it is agreed upon with the maintainer which I am not sure you are. I don't know how development of this tool is organized and as such I couldn't infer from your comment that it was to be understood as a feature decision and implementation request  - especially since you used the word probably. I am not a JavaScript programmer, instead using JS from a compile-to-JS language via interop so I leave writing quality JavaScript to those who are capable of it.
Certainly I am not here for sympathy but instead because I value this tool and wish to help improving it. Please consider my comments here as my main contribution so far.
Altering global defaults affects other codes behavior, so it is not a viable workaround to me. I believe the only workaround at the time is to manually calculate the difference to the users timezone and adding it back.

@lgrapenthin -- I'm sorry for misinterpreting your comments; perhaps the miscommunication was because we're both passionate about code and making things work correctly.  The arguments you gave make it clear that this is an issue with no good workarounds.  I think often it's pretty easy to lose sight of what something is actually being built for and how it will be used, and having concrete examples is hugely valuable.  I want to make sure we have a good answer for all of the points you bring up before we settle on a solution.
I am indeed a contributor and I would like to get a fix for this landed.  Re: design decision -- I used "probably" only as a way of brainstorming; the idea I had gives extra flexibility but I'm not sure if the added flexibility has any motivating use cases.  I ask for contributions for all requests as I'm only able to contribute here in my spare time, which I haven't had a lot of lately because of "real" work.  I believe to an extent that if one can give a detailed description of a problem, they can also fix the problem =)  Don't forget that you're not alone, and we will give you direction and code review comments if you decide to take a crack at this.  This is one of the greatest benefits of open source!

If I understand the workaround correctly, I'm not getting the results I was expecting.
const rightNow = new Date().getTime(); // run at ~2:30pm EST ==<PHONE_NUMBER>653
const startTime = moment.tz(rightNow, "Australia/Melbourne");
return (
	<DatePicker
		className="form-control"
		dateFormat="YYYY-MM-DD"
		selected={ startTime }
		onChange={ this.handleDateChange }
	/>
);

I'm still getting today's date, when I should be getting tomorrow when setting the timeZone to "Australia/Melbourne" (It's currently ~4:30 am there right now).  Is this more or less the recommended path?  Am I missing something?  Really don't mind workarounds, just feel like I've wandered off the reservation a bit and would love a suggestion.

https://github.com/Hacker0x01/react-datepicker/issues/679

Seems like this might be fixed now?

Yes, I hope. if this is not in release you can use workaround: include utcOffset={moment().utcOffset()} property and it will fix it.

I pushed 0.40.0 with the fix included.

Sorry, I did not know that you are a maintainer.

No problem :)

Thank you all, this was annoying the *** out of me. I like the behavior much better now.

Im using react-datepicker": "^0.49.0"
and on the todayButton={"Today"} im still getting yesterdays date.

I share my "fix" here:
My goal was to keep current datepicker behavior (work in UTC is nice) and change only when date is push to other services (a cassandra databse for me)
To convert date to user wishes, I have to move date as below :
let utcOffsetMinute = moment().utcOffset();
data.companyBirthDate.add(utcOffsetMinute, 'minutes').utc();

If user select 2012-01-10 at GMT+2, react-datepicker will store 2012-01-09T22:00:00Z. I'll change value to 2012-01-10T00:00:00Z.

@dbyzero I think the latest release may have switched some dates back to UTC by accident. We might need more unit tests.

Hmm, do we know which commit broke this? And yes, more tests..

@martijnrusschen I've been busy on other things and haven't had a chance to test, but I think b1615d8fbed00db3bf1dc2ead3cf03585fdb5b73. Note that utcOffset is set via defaultProps, so in most timezones will be truthy by default, preventing the next line for local moments from being used.

Can confirm that the latest version gives yesterdays date for timezones east of GMT.

@martijnrusschen Can you reopen this?

Wouldn't have it been more appropriate to add a typeof wrapper for the utcOffset instead of plain revert?
Or were there any other side effects not accounted for?

Hey, is this issue still happening for more users? I


graphml is not defined

NameError at /ocp/accounts/login/
name 'graphml' is not defined
see https://github.com/openconnectome/open-connectome/commit/4719ce21a513bbb4cc7381afeb95b228e5515d89
I ended up adding quotes around it and it works.
there were two other syntax errors -- I didn't actually fix them, just commented them out, so I might have broken something. In python you can't write something like
test = # comment

because it expects something after test = and doesn't parse the comment. Stupid, but commenting out the full line seems to do the trick.

@alexbaden  This does not seem to be a problem after your changes now. I can deploy this branch.

Sorry, missed those on my scan through before commit, will edit/update as I work on ramon graphGen today

Issue should be fixed in latest commit.


How to validate or modify an input before a mutation?

Which Category is your question related to?
api
What AWS Services are you utilizing?
api, function
Provide additional details e.g. code snippets
I am trying to create a RSS reader, which has the following type:
type Feed @model {
  id: ID
  url: String!
  title: String!
  description: String
}

On my UI, I want the user to enter a URL, which will check if it is a valid RSS URL and then generate a Feed object by using rss-parser
The problem I have is that I am currently doing that validation on the frontend (which may lead to unintended behaviour by manually calling createFeed or updateFeed mutations with wrong data).
I am wondering if there is any way to validate and build the object before calling createFeedMutation, so maybe changing createFeed(input: CreateFeedInput!) to createFeed(url: String!) and then calling PutItem operation from DynamoDB.
A solution I came up with was to avoid automatically generating createFeed and updateFeed resolvers and instead chain two @functions:
type Feed @model(mutations: null) {
  id: ID
  url: String!
  title: String!
  description: String
}

type Mutation {
  createFeed(url: String!): Feed
    @function(name: "GenerateFeed-${env}")
    @function(name: "CreateFeed-${env}")
  updateFeed(url: String!): Feed
    @function(name: "GenerateFeed-${env}")
    @function(name: "UpdateFeed-${env}")
}

And the GenerateFeed function:
const Parser = require('rss-parser')

exports.handler = async function generateFeed(event, context) {
  try {
    const parser = new Parser()

    const { feedUrl: url, title, description } = await parser.parseURL(
      event.arguments.url
    )

    context.succeed({ url, title, description })
  } catch (err) {
    context.fail('Please enter a valid RSS URL')
  }
}

But I got stuck on that because:

When I create the CreateFeed and UpdateFeed functions through amplify add function and I'm asked to choose what other resources I want to access, the Feed table generated by @model doesn't appear under the Storage category, so I don't know how to get the table name.
I don't know if that is going to work with amplify mock, because I also don't know if Amplify also mocks DynamoDB calls within lambda resolvers.

This might be related with #1055.

This could potentially be addressed with upcoming improvements to @model mutation input types. See https://github.com/aws-amplify/amplify-cli/issues/2429
cc @attilah

@kevinwolfdev Any updates on this? would you share the solution you eventually implemented? Thanks!

@kevinwolfdev Another question. You said above that:

A solution I came up with was to avoid automatically generating createFeed and updateFeed resolvers and instead chain two @functions:

When I try to do this, I get the following error from amplify cli:
Object type extension 'Mutation' cannot redeclare field createFeed
How did you get past this error?
Thanks!

You can overwrite resolvers using vtl
- https://docs.amplify.aws/cli/graphql-transformer/resolvers#overwriting-resolvers
- https://docs.aws.amazon.com/appsync/latest/devguide/resolver-mapping-template-reference-programming-guide.html

@viczam I know I can overwrite resolvers using VTL, but I was trying to overwrite them using Lambda resolvers. There's a subsection in the docs I overlooked though, I'll check it out now: https://docs.amplify.aws/cli/graphql-transformer/resolvers#add-a-custom-resolver-that-targets-an-aws-lambda-function

I would love an @validation on tables, which would create a lambda function Validate(TableName, CreateOrUpdate, InputValues):ValidationResult
This way you could write your own validation against multiple fields at a time, you could even potentially return a ValidationResult that was [{field, value, isValidBool, reason}], so some fields could be updated and others wouldn't be...with the results returned to the mutation caller.

Optionally an @validation on fields could allow for only selected fields being passed to the lambda validate function, which would allow for performance improvements on large objects.


README: Update Travis link

Can you also update the repository link in Cargo.toml and the links in CHANGELOG.md?

Done.

bors r+

(bors isn't working yet on the newly transferred repo, so I'll just merge this manually)


Onboarding 13: procedure to switch Workspace Super Admin to Free Cloud Identity Super Admin

https://github.com/GoogleCloudPlatform/pbmm-on-gcp-onboarding/blob/main/docs/google-cloud-onboarding.md#onboarding-13-switch-super-admin-account-from-workspace-to-cloud-identity

20240406: Closing issue during retrofit/rebase of this TEF V1 based/modified repo to TEF V4 standards
This issue may participate in the LZ refactor after rebase
Query on all issues related to the older V1 version via the tag
https://github.com/GoogleCloudPlatform/pbmm-on-gcp-onboarding/labels/2024-pre-tef-v4


bug with Jekyll 3.3.0

when I launch Jekyll s
jekyll 3.3.0 | Error:  undefined method `extname' for #Jekyll::Archives::Archive:0x007fc58a9fbda0
why??

Fixed in current master. Closing as a duplicate of #76


Take care of progress code that cannot be tested under karr_lab_build_utils

Submitted pull request #73, asking progress to use my fix
Submitted issue #202 for python-progressbar, called stderr is closed

If one of the progress bars fixes their handling of stderr, fix our implementation of 'TestUtilities.test_progress()' and TestSimulationEngine.test_progress_bar()

progress_bar doesn't want to address the issue. tests will run but not cause failures if they fail.


Make Paxter option list more flexible by allowing recursive @-expressions

New syntax proposal:
start ::= non_greedy_fragments                      /* FragmentList */
non_greedy_fragments ::= fragment*?
fragment ::= command | NON_GREEDY_TEXT
command ::=
    | "@" IDENTIFIER options wrapped_main_arg       /* PaxterApply */
    | "@" IDENTIFIER wrapped_main_arg               /* PaxterApply */
    | "@" IDENTIFIER options                        /* PaxterApply */
    | "@" IDENTIFIER                                /* PaxterPhrase (special case) */
    | "@" wrapped_phrase                            /* PaxterPhrase */
    | "@" wrapped_main_arg                          /* FragmentList or Text */
    | "@" wrapped_quoted_text                       /* Text */
wrapped_main_arg ::=
    | wrapped_fragments                             /* FragmentList */
    | "!" wrapped_banged_text                       /* Text */
wrapped_fragments ::=
    | "#" wrapped_fragments "#"
    | "<" wrapped_fragments ">"
    | "{" non_greedy_fragments "}"
wrapped_banged_text ::=
    | "#" wrapped_banged_text "#"
    | "<" wrapped_banged_text ">"
    | "{" NON_GREEDY_TEXT "}"
wrapped_quoted_text ::=
    | "#" wrapped_quoted_text "#"
    | "<" wrapped_quoted_text ">"
    | "\"" NON_GREEDY_TEXT "\""
wrapped_phrase ::=
    | "#" wrapped_phrase "#"
    | "<" wrapped_phrase ">"
    | "(" NON_GREEDY_TEXT ")"
options ::= "[" [ arg ( "," arg )* [ "," ] ] "]"    /* OptionList */
arg ::= [ IDENTIFIER "=" ] val
val ::=
    | command
    | wrapped_quoted_text                           /* Text */
    | JSON_NUMBER                                   /* Number */
    | IDENTIFIER                                    /* Identifier */

NON_GREEDY_TEXT ::= /.*?/
IDENTIFIER ::= ID_START ID_CONT*

ID_START represents a subset of characters (for regular expression) that is allowed to be the first character of an identifier, consisting of an underscore (_) plus Unicode character classes Lu, Ll, Lt, Lm, Lo, and Nl.
ID_CONT represents a subset of characters (for regular expression) that is allowed to be the subsequent characters of an identifier, consisting of all characters from ID_START plus Unicode character classes Mn, Mc, Nd, and Pc.
Parsing JSON_NUMBER tokens will strictly follow the JSON specification and the value in the parsed tree will be recognized by json.loads function.

Addition:
Allow non-id symbols to follow @, and wrap the only character immediately following the @ as a part of PaxterPhrase. This allows the usage of @, or @; analogous to LaTeX's \, and \;, etc.

Another Suggestion:
For wrapped_phrase, instead of using a pair of normal parentheses ( and ) perhaps we could just use a pair of bars | and | instead. Hence, for example:

<EMAIL_ADDRESS>would be equivalent to<EMAIL_ADDRESS>Instead of writing @(1+1), we should instead write @|1 + 1|.
If the previous comment is to be adopted, then a@,b would be equivalent to saying a@|,|b
Of course, in order to put a single bar within the PaxterPhrase, the user would be required to add delimiters around it, such as @#|||#.

Questions:

Do I need [...options...] part of command? One argument for it is that I would like a mechanism to be able to provide multiple pieces of text into a single command (think string replace).
Do I wish to provide assistance for macros? This might not be explicitly necessary as the input will already be transformed into parsed tree which means that macro expansion comes naturally.


With database extension, on page refresh,  if only one user is editing, content becomes blank

Description
If we refresh the page, when only one user instance is editing the document, the database extension does not set the already edited content. As far as I know, the database extension should fix the initial content which is being edited, even if the page is refreshed. Please correct, if I am wrong. The server.js code is as follows (with MySQL). I already have tried with FireBase, SQLite with both in memory and disk write and RethinkDB):
Steps to reproduce the bug
Steps to reproduce the behavior:

Only one user is editing the page
Refresh the page
Content in already edited document becomes blank

Expected behavior
Database extension should fetch the document either from memory or persisted storage and load to page.
Also, should we convert it to Uint8Array or the DB extension does it by default as commented in the code?
Environment?
operating system: MAC OS 12.1, Ubuntu
browser: Chrome, Firefox, Safari
mobile/desktop: Desktop
hocuspocus version: 1.0.0-beta.
Additional context
The server.js code is:
import * as dotenv from "dotenv";
dotenv.config();

import { Server } from "@hocuspocus/server";
import { Database } from "@hocuspocus/extension-database";
import mysql from "mysql2";
/*
Should we convert it to Uint8Array or the DB extension does it by default?
*/

//import { toUint8Array, fromUint8Array } from "js-base64";
import { Throttle } from "@hocuspocus/extension-throttle";

const pool = mysql.createPool({
	connectionLimit: 100,
	host: process.env.DB_HOST,
	user: process.env.DB_USERNAME,
	password: process.env.DB_PASSWORD,
	database: process.env.DB_DATABASE,
	port: process.env.DB_PORT,
	debug: false,
});

const server = Server.configure({
	port: process.env.HOCUSPOCUS_PORT,
	extensions: [
		new Throttle({
			throttle: 200,
			banTime: 1,
		}),

		new Database({
			fetch: async ({ documentName }) => {
				return new Promise((resolve, reject) => {
					console.log("Trying to fetch");
					pool?.query(
						"SELECT data FROM ydocuments WHERE name = ? ORDER BY id DESC",
						[documentName],
						(error, row) => {
							if (error) {
								reject(error);
							}
							console.log("data: " + JSON.stringify(row));
							if (row && row.data) {
								resolve(row.data);
							} else {
								resolve(null);
							}
						}
					);
				});
			},

			store: async ({ documentName, state }) => {
				pool?.query(
					"INSERT INTO ydocuments (name, data) VALUES (?, ?) ON DUPLICATE KEY UPDATE data = ?",
					[documentName, state, state],
					(error, result) => {
						if (error) {
							throw error;
						}
						console.log(
							`inserted/updated ${result.affectedRows}`
						);
					}
				);
			},
		}),
	],
});

server.listen();

Closed as duplicate of #540


Docs are misleading

I didn't think the plugin was working since it says "then you can use %NODE_ENV%" but really the delimiters are !! by default, not %. Almost gave up but looked at the docs one more time and saw the piece at the bottom about the defaults and it clicked.

Hi, it's now fixed to %NODE_ENV%, but honestly I've ended up passing data via html-webpack-plugin's options directly.


fix(rum): handle unprocessed buffer in RUM filter

Description
Fix an issue where recycled buffers were not properly consumed by the RUM filter, causing NGINX to fail in serving the full response.

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

Project coverage is 69.17%. Comparing base (5075c18) to head (1d151d1).

Additional details and impacted files

@@            Coverage Diff             @@
##           master     #129      +/-   ##
==========================================
+ Coverage   68.97%   69.17%   +0.20%
==========================================
  Files          36       36
  Lines        4003     4883     +880
  Branches      676      676
==========================================
+ Hits         2761     3378     +617
- Misses        888     1151     +263
  Partials      354      354

see 33 files with indirect coverage changes


Windows IME

What does the pull request do?
This is a continue of #6223. I want to fix all issues our QA team have found to make windows IME usable in production.

[x] Merged Avalonia master
[x] Fixes ApiCompat text file
[x] Adds option to enable/disable IME for any InputElement
[x] Current SetActive method not disabling IME - it only switches IME back to english letters. This causes issues with input if korean language is selected.
[x] Fix IME after dialog show not working - active window context is not applied.
[x] Fix IME intermediate input position to be exactly correct/equal with the caret.
[x] Fix IME intermediate input font size to be exactly correct/equal with the caret.
[x] Fix emoji panel do not update it's position on windows 10 until window activate/deactivate or move.

Resources used to find out how to implement IME:

https://source.dot.net/#PresentationCore/System/Windows/Input/InputMethod.cs,69f2e27d3eaa4f16
https://chromium.googlesource.com/external/google-input-tools/+/refs/heads/master/client/imm/ui_window.h
https://github.com/ryancheung/ImeSharp
https://chromium.googlesource.com/experimental/chromium/src/+/bf09a5036ccfb77d2277247c66dc55daf41df3fe/chrome/browser/ime_input.cc

PS: I'm not a good github user, so I don't know if there was a better solution to contribute to the @yatli PR. So I've created this PR and PR to @yatli repo.

There is a lot we can do more about IME. But for now I think this is a good start. Next step will be - not using composition window - create preEdit support in textBox

@kekekeks


fix highlight error for current shown buffer

Buffer current position highlighting gives error. It is caused by match's misintepretation of top and bottom.
round() gives a float type. And end up sending '10.0' like stuff to vim's match at line 177, which it mis-intepret. Hence the error message. So I force them to int type. Problem solved.

It should have solved #42 .

Thank you, merged!


New Extension: Thesaurus

Description
Add Thesaurus extension that allows users to search for synonyms and antonyms as found on Thesaurus
Screencast

Checklist

[x] I read the extension guidelines
[x] I read the documentation about publishing
[x] I ran npm run build and tested this distribution build in Raycast
[x] I checked that files in the assets folder are used by the extension itself
[x] I checked that assets used by the README are placed outside of the metadata folder

Hi @Dueen 👋
Are you still around?


cmd/scollector: use dmidecode to get serialNumber and model metadata …

…since the Dell method stopped working

Working on my test vm pointed at devbosun: http://devbosun.ds.stackexchange.com/host?host=ny-gbraylx01&time=1d-ago&tab=metadata


Fix const_basename on windows host and linux target

I use GCC for arm linux target compiled for windows host(Linaro arm-linux-gnueabihf for mingw). And const_basename doesn't work. On my linux taget I see full path instead of basename. e.g.
I0905 19:46:34.622531  1536 Z:\dev\visa_server\src\main.cpp:115] Hello World
I0905 19:46:34.628554  1536 Z:\dev\visa_server\src\main.cpp:123] Yo

@sergiud, could you please take a look at this pull request. cheers.


Feature: Pre-populate basic info with openExternalInsert

Description

Added an optional Contact argument to openExternalInsert allowing pre-populated data to show up in the external UI.

Limitations

On Android only Name, and one phone number is implemented currently but support for more can be added by using the respective Intent extras.

Very cool!! Thanks a lot for this PR @sakchhams
I'm adding more android fields in a follow-up PR


Universal Scalar UpdateGizmoRotationToAttachedMesh resulting in reverse behavior

When setting the below property to true. The Uniform scalar behaves in the opposite manner after rotating 90 degrees.
gizmoManager.gizmos.scaleGizmo.uniformScaleGizmo.updateGizmoRotationToMatchAttachedMesh = true;
Steps to recreate:
Uniform scalar bug repro

load scene,
rotate any mesh 90 degrees,
press "r" to load the scaling tool,
drag the uniform scalar up to increase the scale of the object.
You will notice that the scale decreases instead of increases.

Expectation:
Regardless of the rotation of the universal scalar, dragging "up" will increase the scale, dragging "absolute down" will decrease the scale of the mesh.
Babylon Version 4.1

As mentioned in the template, please use the forum first...

Hi @deltakosh, here is the topic:
Babylon Forum Topic

Sure but there was no discussion :)