Primary outlet is already registered.

 Just updated to beta.9 :)

This is a common problem if you are trying to use the minified version of the router library. Try switching to the non-minified version and the problem should go away.

@chenkie: I am using angular.beta9.

I ported the custom router outlet over to my own code and an upgrade to beta 9 triggered the same issue. Here's the relevant Angular 2 commit.

@dieuhd - have you also updated the other libraries including rxjs and zone (as well as devDependencies).  I had that issue arise during the bump to beta 9  - but after updating all dependencies to what you see in the latest commit and using the non-minified version of the router the error went away. Is there a code sample you can share?

@kukicadnan Here are my code:

app.component.ts

import {Component, Input} from 'angular2/core';
import {RouteConfig, Router, ROUTER_DIRECTIVES, CanActivate} from 'angular2/router';
import {HTTP_PROVIDERS}    from 'angular2/http';
import {MATERIAL_DIRECTIVES} from 'ng2-material/all';
import { AuthConfig, AuthHttp } from 'angular2-jwt';

import {LoggedInRouterOutlet} from '../directives/logined-in-outlet.directive';
import {PostsComponent} from './posts.component';
import {LoginComponent} from './login.component';
import {AuthService} from '../services/auth.service';

@Component({
    selector: 'hb-blog',
    templateUrl: '/app/components/app.component.html',
    directives: [MATERIAL_DIRECTIVES, LoggedInRouterOutlet, ROUTER_DIRECTIVES, LoginComponent]
})

@RouteConfig([
	{ path: '/login', name: 'Login', component: LoginComponent },
	{ path: '/posts', name: 'Posts', component: PostsComponent },
	{ path: '/**', redirectTo: ['Login'] }
])

export class AppComponent {
	public isLogined: boolean = false;
	public firstLoaded: boolean = false;
	constructor(private _router: Router, private _authService: AuthService) {

	}
	get authenticated(){
		return this._authService.isLoggedIn();
	}
	get userInfo() {
	}

	logout() {
		this._authService.logout();
		this._router.navigate(["Login"]);
	}
}

package.json

"dependencies": {
    "angular2": "2.0.0-beta.9",
    "angular2-jwt": "^0.1.8",
    "bootstrap": "^3.3.6",
    "es6-promise": "^3.1.2",
    "es6-shim": "^0.33.13",
    "marked": "^0.3.5",
    "ng2-material": "0.2.11",
    "reflect-metadata": "0.1.2",
    "rxjs": "5.0.0-beta.2",
    "systemjs": "0.19.22",
    "zone.js": "0.5.15"
  },
  "devDependencies": {
    "concurrently": "^2.0.0",
    "lite-server": "^2.1.0",
    "typescript": "^1.8.7",
    "typings": "^0.6.8"
  }

Not to hijack this thread, but as an alternative, you can also apply a @CanActivate decorator to your components. In my experimental project, I've replaced the router outlet override with a tiny @Auth decorator, which wraps @CanActivate. I'm not sure which approach I prefer syntactically, but at least this new one works.

i got it working (using beta-11) by renaming the selector form router-outlet to auth-router-outlet

@ric-cardo Working with beta-9 too. Downgraded to beta-9 because of breaking changes.

In addition to using the non-minified router, I had to use the non-minified version of Angular 2 as well, e.g. https://cdnjs.cloudflare.com/ajax/libs/angular.js/2.0.0-beta.14/angular2.js instead of angular2.{dev|min}.js.

I still get this Primary Outlet error when trying to use a child route.

I manged to get it to work by using this filter:
directives: [ROUTER_DIRECTIVES.filter(direc => direc != RouterOutlet), OverwittenRouterOutlet, ...]


How to debug JSON-RPC Request Failed Error?

I've successfully connected to the web-examples, but signing eth_sendTransaction without luck. How can I debug the error?
Is it behavior expected due to the signing method?

why close the issue?


fix database schema generation w.r.t. #4268 for Derby, Doris and DuckDB

continue the work started in #4268 for three more database systems

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

[x] Run mvn clean install apache-rat:check to make sure basic checks pass. A more thorough check will be performed on your pull request automatically.
[x] If you have a group of commits related to the same change, please squash your commits into one and force push your branch using git rebase -i.
[x] Mention the appropriate issue in your description (for example: addresses #123), if applicable.

To make clear that you license your contribution under the Apache License Version 2.0, January 2004
you have to acknowledge this by using the following check-box.

[x] I hereby declare this contribution to be licensed under the Apache License Version 2.0, January 2004
[ ] In any other case, please file an Apache Individual Contributor License Agreement.

thanks @rramthun !


<IP_ADDRESS> Ensure mounting of udf filesystems is disabled

Profile Applicability:
 Level 2 - Server
 Level 2 - Workstation
Description:
The udf filesystem type is the universal disk format used to implement ISO/IEC 13346
and ECMA-167 specifications. This is an open vendor filesystem type for data storage
on a broad range of media. This filesystem type is necessary to support writing DVDs
and newer optical disc formats.
Rationale:
Removing support for unneeded filesystem types reduces the local attack surface of the
system. If this filesystem type is not needed, disable it.
Impact:
Microsoft Azure requires the usage of udf.
udf should not be disabled on systems run on Microsoft Azure.
Audit:
Run the following script to verify udf is disabled:
#!/usr/bin/env bash
{
l_output="" l_output2=""
l_mname="udf" # set module name
# Check how module will be loaded
l_loadable="$(modprobe -n -v "$l_mname")"
if grep -Pq -- '^\h*install \/bin\/(true|false)' <<< "$l_loadable"; then
l_output="$l_output\n - module: \"$l_mname\" is not loadable:
\"$l_loadable\""
else
l_output2="$l_output2\n - module: \"$l_mname\" is loadable:
\"$l_loadable\""
fi
# Check is the module currently loaded
if ! lsmod | grep "$l_mname" > /dev/null 2>&1; then
l_output="$l_output\n - module: \"$l_mname\" is not loaded"
else
l_output2="$l_output2\n - module: \"$l_mname\" is loaded"
fi
# Check if the module is deny listed
if grep -Pq -- "^\h*blacklist\h+$l_mname\b" /etc/modprobe.d/*; then
l_output="$l_output\n - module: \"$l_mname\" is deny listed in:
\"$(grep -Pl -- "^\h*blacklist\h+$l_mname\b" /etc/modprobe.d/*)\""
else
l_output2="$l_output2\n - module: \"$l_mname\" is not deny listed"
fi
# Report results. If no failures output in l_output2, we pass
if [ -z "$l_output2" ]; then
echo -e "\n- Audit Result:\n ** PASS **\n$l_output\n"
else
echo -e "\n- Audit Result:\n ** FAIL **\n - Reason(s) for audit
failure:\n$l_output2\n"
[ -n "$l_output" ] && echo -e "\n- Correctly set:\n$l_output\n"
fi
}

This audit must be done on the actual machine, virtualization or tools like Docker will fail. This is because modprobe and lsmod may not be loaded. You can't load kernel modules in a Docker container. You need to load them on the host. See https://github.com/sandevistan-server-hardening/CIS_Ubuntu_22.04_LTS_Benchmark_v1.0.0/issues/1


GUE: Splice site recognition in regards to sequence labeling/NER vs classification

Hi Zhihan,
Hope you're doing well.  I had a wonderful time reading your paper in regards to the improvements made to DNABERT and trying to set up a language model evaluation framework.
However, I question whether the labels for the splice site recognition benchmark truly represents how a user may approach this task.  When going through the train/dev/test set, I've noticed that your labels only provide an annotation on whether the entire sequence is {no splice site, donor, acceptor}.  Current state of the art tools, such as SpliceAI, provide even further information similar to an NER task by labeling every nucleotide within a given sequence. Therefore, has DNABERT2 been previously evaluated in evaluating Splice sites as an NER task?

Hey,
Thanks for pointing out this! This is a great point but we have not tried to evaluate splice sites as an NER task. I will add it to my TODO list!

No problem, let me know if you need help sourcing an appropriate train/val/test dataset for GUE. Best of luck!


✖ Failed to sync the following components: DatabaseTableCreateForm, DatabaseTableUpdateForm, DynamicDatasetCreateForm, DynamicDatasetUpdateForm, DataSetCreateForm, DataSetUpdateForm

How did you install the Amplify CLI?
node
If applicable, what version of Node.js are you using?
v14.17.3
Amplify CLI Version
11.0.3
What operating system are you using?
Mac
Did you make any manual changes to the cloud resources managed by Amplify? Please describe the changes made.
No
Describe the bug
When I try to checkout or pull i get....
✖ Failed to sync the following components: DatabaseTableCreateForm, DatabaseTableUpdateForm, DynamicDatasetCreateForm, DynamicDatasetUpdateForm, DataSetCreateForm, DataSetUpdateForm
If i downgrade to cli version 11.0.0 i do not get the error and it pulls successfully.
I also tried cloning a new repo and pulling fresh with 11.0.3.   Same error.
Expected behavior
I don't expect to get the error.
Reproduction steps
Idk. I only have one app. I don't know if this problem would occur with a new environment. I do know that it happens on 11.0.3 and it works on 11.0.0.
Project Identifier
No response
Log output

# Put your logs below this line

Additional information
No response
Before submitting, please confirm:

[X] I have done my best to include a minimal, self-contained set of instructions for consistently reproducing the issue.
[X] I have removed any sensitive information from my code snippets and submission.

this is similar to closed issue... https://github.com/aws-amplify/amplify-studio/issues/763

hey @LeoReubelt, thank you for reaching out. By any chance do you observe any stack trace when running amplify pull --debug?

hey @LeoReubelt, yes that would be great. could you try running the pull command with --debug and provide us the output?

hey @LeoReubelt, following up on this issue. were you able to mitigate the issue?

hey @LeoReubelt, thank you for the information. could you provide us your GraphQL schema as this would enable us in reproducing the issue as well.

hey, I was able to find that the https://github.com/aws-amplify/amplify-cli/pull/12352 should address this issue. The Fix would be released in the upcoming Amplify CLI releases.

Thanks @ykethan


How to estimate depth using captured images from ZED , without the need of camera

I do not have the ZED camera,but the dataset I am working on, consists of  the images captured from ZED camera.I wanted to know if it is possible to estimate the depth from the captured images , without physically having the camera.
Any suggestions are greatly appreciated.
Thanks

Hi,
You can if it's a SVO file you have as input.
SVO file are recorded video from a ZED Camera with a specific format compatible with SDK inputs.
Best,
OB

@obraun-sl  Thanks for your quick reply. I actually have the stereo images captured from the Zed camera,but I do not have the camera with me.Is there any code to convert the stereo images to svo format and then use it for depth estimation?
Any suggestion is greatly appreciated.
Thanks

Unfortunately, the SVO file contains more than just the two images to be able to be ingested into the ZED SDK pipeline.
With only the 2 images, I am afraid we cannot reconstruct the SVO file.
Maybe you can ask the dataset provider if they have the original SVO file ?

Thanks for the response! I will try asking the dataset provider for the SVO file.

@obraun-sl however in the streaming case isn't the ZED SDK pipeline on the receiving end only receiving image data? Or is some non-image data, like the non-image data in the SVO file, also being streamed?
In other words if you can't get hold of the SVO file could you not video encode and stream image data into the ZED SDK pipeline? Obviously with all the extra overhead of video encoding and decoding.

@seanmcleod The streaming part is quite similar to the SVO file. It also contains non-image metadata similar to the SVO file.

@obraun-sl okay so it's not just plain H264/265 video data then?
In terms of the Zed2 is the sensor data from the IMU etc. also streamed?
And so without any documentation on the non-image metadata I guess that rules out us being able to do some testing and training with synthetic image data from something like AirSim with the Zed SDK before taking the Zed camera out into the real-world for additional testing etc.?

@obraun-sl any comments regarding my query above?

The SVO and the streaming format contains more than the video data. It also contains metadata for the image and sensors data (such as imu, and more if using the ZED2).
However, we can think about a way to interface with simulation platform like AirSim using the streaming interface.

@obraun-sl This would be really useful!


Wrong Import in VRCore.js

Thank you for this great boilerplate! I will give it a try in my current vr project :)
In the following file there is a small typing mistake:
src/common/js/VRCore.js
The Line:   "import 'three-onEvent';"
has to be   "import 'three-onevent';"
After that change everything works great :+1:

Fixed👌~ Thank you!


Understand data release timelines

Understand the process of MCAS & STAR data releases:

When is the data released?
What assessment date is linked to each data release? #56
What are the file names (is there are systematic naming convention)?

Broad timeline:

July: Preliminary MCAS available
August: Final MCAS available
September (early): DIBELS/STAR testing
September (late): STAR data available
September (late): FALL ROSTER DISTRIBUTED
October (early): X2 data snapshot
October (mid): DIBELS data available
January: DIBELS/STAR testing
January-February: WIDA ACCESS
January (late): STAR data available
February (early): X2 data snapshot
February (early): DIBELS data available
February (mid): WINTER ROSTER DISTRIBUTED
March-April-May: MCAS testing
April-May: DIBELS/STAR testing
May (early): X2 data snapshot
May (mid): STAR & ACCESS data available
June (early): DIBELS data available
July (mid): Preliminary MCAS data available
August (mid): Final MCAS data available

@marimuraki — Is this still an open issue? Should we add this info somewhere in the repo?


Error reporting prod docs

Description
Migrates additional content from support.backtrace.io (adds content for security and compliance + file attachments) to Sauce Docs. Also updates previously migrated content for workflow integrations.
Motivation and Context
Content was migrated "as-is" from the KB to ensure existing translation projects are maintained. The content will be updated in the future to meet to our documentation styles and standards.
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)
[ ] Documentation fix (typos, incorrect content, missing content, etc.)

Checklist

[ ] I have read the contributing document.
[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[ ] I have added tests to cover my changes.
[ ] All new and existing tests passed.

@kimsauce Thanks for the thorough review! I made the style changes. Can you re-review?


Pkgj port to ps3

Is it possible to port pkgj to ps3? Just imagine downloading and installing games directly to ps3 without using psnstuff or nps browser

Sorry, I won't accept source code change to C++ or new dependencies like boost.
I would ok to merge most of changes, but they need be in same style as rest of code. Please redo the pull request, if you want me to do so.


Consider adding support for Array.transform

Based on mutable Seq.transform. I think that transform method (mapping in place) would be very useful in the context of off-heap arrays.

Agreed.


illumination.phase.angle (and many others) do not exist like documented

I need the moon phase angle, according to documentation it should be msg.payload.illumination.phase.angle but I cannot find it in any of the properties.

I have the same observation in v2.2.0-beta3...


Update sangria to 1.2.2

Updates org.sangria-graphql:sangria from 1.2.0 to 1.2.2.
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

Adjust future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "org.sangria-graphql", artifactId = "sangria" } ]

Or, add this to slow down future updates of this dependency:
dependencyOverrides = [{
  pullRequests = { frequency = "@monthly" },
  dependency = { groupId = "org.sangria-graphql", artifactId = "sangria" }
}]

labels: library-update, early-semver-patch, semver-spec-patch, commit-count:1

Superseded by https://github.com/sangria-graphql/sangria-subscriptions-example/pull/23


First tests, Travis CI, MFA support, and fog file compatibility

Description and Impact
Setup for rspec testing.
Travis CI integration.
Update Ruby compatibility.
Add support for fog file credentials.
Add support for MFA.
QA Plan
Verify you don't have a .aws.yml file in the project directory or above.
Run bin/aws-auditor inspect [profile] on a non-mfa and mfa profile.

CR/QA 👍
Also tested out rspec, and that works, as well as travis is successfully set up.


Draeger bin has a variable format

It turns out Dräger *.bin data is not always formed the same. According to the manual the medibus data exists of 52 channels of 32 bit data. However, in some files there are more channels (and potentially fewer in others?).
It is therefore unknown how many channels there are beforehand. Also, it is now unclear whether the order is always the same. There are multiple ways to solve this that I can think of:
Method 1: loading until you find a timestamp
Continue loading medibus data until a value is found that could be the next timestamp (i.e. the first data in the next frame). We could try this without actually loading data beforehand, and test e.g. 10 timestamps before concluding this is the proper frame size.
This method does not tell which channels there actually are, and what the order is.
Method 2: divisors
This assumes the file size is always a integer multiple of the frame size. Find the divisors of the file size and select the most probable one to be the actual frame size. The frame size is at least 4150 (without any medibus channels) but likely at least 4358 (with 52 medibus channels).
This method does not tell which channels there actually are, and what the order is.
https://alexwlchan.net/2019/finding-divisors-with-python/
Method 3: combine 1 & 2
First use method 2 to find candidate frame sizes. Then see whether the first four bytes of each frame conform to an expected time axis (i.e.: continuously increasing value with a predictable value gap).
This method does not tell which channels there actually are, and what the order is.
Method 4: require *.asc-file
The ASC file can be exported using the PulmoVista software at the same time as the BIN files. Among other things ASC files contain the medibus data in a CSV-like format, including a header with the column names.
This method tells the names and order of the channels.

Thanks to @JulietteFrancovich for finding the issue.

To me it sounds like method 4 is the safest/most accurate, with main drawback being less flexibility for users, is that right?

Yes, this reduces flexibility. I think that 4 is the way to go for now, maybe creating the option to use 3, with the caveat that there is uncertainty about what the signals actually mean (because BIN-files don't have labels, ASC-files do).

Do I understand correctly (seeing #194) that this would mean that two separate files are needed, the bin-file for the pixel impedance data, and an asc-file for all other data?

Yes, that is correct. I've started work on a loader for ASC-files. After this is done we could adapt the Draeger loader to also accept an ASC-file (or search for a similarly named file with the ASC extension) so you can load them both and merge them.

I found that there are actually only 2 possible versions of .bin files, that are exported from two versions of Pulmovista Analysis Tool. The oldest version is supported by eit-processing, while the newest throws an error. This is due to the fact that the newer version exports also the values of airway, oesophageal and gastric pressure from the pressure POD (whether it is installed or not). Should not be simpler to just try importing the old version and, if this does not work, go with the new structure for import function?

That sounds very plausible. This might be a good intermediate solution.

I might help on this one, as I already extracted data from Draeger bin files using Python, but I haven't read how this package works..


Domain: Actually terminate a domain when terminate is called

Thank you. It seems with the refactor a number of copy paste errors were made. I just looked through the other function calls and I did not see any other naming mistakes there :).


Create smi-conformance-capability.md

Signed-Off-By: KarenEfereyan<EMAIL_ADDRESS>Description
Added smi-conformance-capability file in a  new page under docs/
This PR fixes #1373
Notes for Reviewers
Signed commits

[x] Yes, I signed my commits.

@KarenEfereyan I am so glad you passed all the checks. So proud of you. 🎉

Your kindness @NupurThakur27 made it possible

Whoa, impressive. Well done, @KarenEfereyan. A good layout with appropriate length summary. ✔

Yippe! 🥳 Welldone Karen.


Move World Geographical Scheme for Recording Plant Distributions out of prior standards?

See #18: there is interest to update this standard. If a maintainer can be found, it might make sense to move this standard out of this repository and give it its own repository, where it can be maintained and downloaded?

[x] Find maintainer
[x] Create team
[x] Move content to new repo
[x] Update URL redirect

Repo created at https://github.com/tdwg/wgsrpd
Team called WGSRPD
I'm currently maintainer with @mdoering.
Redirect updated at https://github.com/tdwg/infrastructure/commit/145d5b7c0126ad6c64bb08111d7e9f67c3ac6d24

@mdoering does anything need to happen to make that redirect work?

Hi
you can fine a current application of the standard here : https://dev.e-taxonomy.eu/redmine/projects/edit/wiki/MapRestServiceExamples
The shape files are updated regularly here and can be access/downloaded freely : http://edit.africamuseum.be/geoserver/web/?wicket:bookmarkablePage=:org.geoserver.web.demo.MapPreviewPage
You can find there also the explanation on how to use them in Rest Services and other applications to display them in websites, portals or produce maps for different purposes.
It is currently maintained jointly by BGBM Berlin and the Royal Museum for Central Africa  here : https://cybertaxonomy.eu/
A first question to resolve and agree is if the above application of the standard is to be part of the TDWG standard or seen just as an application of the standard, notably updating the shape files.
Probably clarifying this and which is in scope of TDWG and which not, will also help to have a maintainer come forward, because maintaining a full geo-server where you can download layers with a service to update them is much more a commitment, then maintaining the standard on how to provide them in a standard way is another story.
Pat

Thanks @pmergen, let's move all specific discussions to the new repository.
E.g. here: https://github.com/tdwg/wgsrpd/issues/3


Provide standard ECC

(This issue has been imported from the Gitlab repository because it seems to not have been addressed yet)
Original Text (Issue 183)
Provide a list of standard ECC parameters as a enum or something

Related to plugin mechanism
Some standard parameters for pairing curves

Lacks quite a bit of detail, but I interpret this as meaning to add more parameter specs similarly to the SFC-256 spec we already provide for the BN pairing?

I think so, yes. More standard ones such as listed here.
But I feel like this is low-priority.


date/time validation is not reliable

Due to used DateFormatter.parseDate() from https://github.com/kartik-v/php-date-formatter around line 1180 in jquery.datetimepicker.js
a validation is not reliable for the following cases:

date is invalid, but time is partially valid, e.g:
'2016/04/33 10:13' -> '1899/12/31 10:13'
'2016/04/33 1' -> '1899/12/31 1:00'
'2016/04/33 99' -> '1899/12/31 00:00'
this is because parseDate() ignores invalid date part if time part is present.
date is valid, but time is invalid, e.g:
'2016/04/05 99:88' -> '2016/04/05 00:00'
this is because parseDate() doesn't validate time part at all.

Tested with php-date-formatter 1.3.3.

If using alternative date formatter as recommended in docs: http://xdsoft.net/jqplugins/datetimepicker/#use_other_date_parser
the datetimepicker doesn't detect invalid date because moment() returns non-false object in case of invalid date.
Correct code is:
$.datetimepicker.setDateFormatter({
    parseDate: function (date, format) {
        var d = moment(date, format);
        return d.isValid() ? d : false;
    },

    formatDate: function (date, format) {
        return moment(date).format(format);
    }
});

And don't forget to add 'format' into datetimepicker constructor.


fix(useStorageValue): Allow setting of state even if the component has not mounted

What is the current behavior, and the steps to reproduce the issue?
The current behavior has been described in #451. In short, using the setValue function provided by useSessionStorageValue and useLocalStorageValue on first mount could cause other instances of those hooks to get out of sync.
What is the expected behavior?
Every instance of the useSessionStorageValue and useLocalStorageValue hooks should return the same value at all times.
How does this PR fix the problem?
By using useState to store the value of the tracked key instead of useSafeState.
In the sandbox below, I have modified the useSessionValue hook in the above way. The example is the one provided in #451 , but this time the reported issue is not present.

Why does this work, you might ask? I do not know. I will have to digest this a bit more.
I arrived at this solution from the simple notion that the state variable is what gets out of sync. I then started going through everything that affected state. I went through many things, but finally I noticed that useSafeState also "affects" state (in a sense that it is not the standard useState that I picture in my mind when I think about React state). I then tried switching it to
a traditional useState, which seemed to solve the issue.
Checklist

[X] Have you read contribution guideline?
[X] Have you added an explanation of what your changes do and why you'd like us to include them?
[X] Is there an existing issue for this PR?

#451

[X] Have the files been linted and formatted?
[X] Have the docs been updated to match the changes in the PR?
[X] Have the tests been updated to match the changes in the PR?

Why does this work, you might ask? I do not know. I will have to digest this a bit more.
Maybe what happens is something like this (referring to the components in my codesandbox):

ValueDisplay mounts and displays the current value in the storage.
Provider mounts, changing the value in the storage.
ValueDisplay has already mounted, so useSafeState allows its state to update.
The components after Provider have not yet mounted and thus useSafeState does not allow their states to be updated. When they mount, they display the value which their useSessionStorage hooks had when they were initialized.

Just a quick thought.
Ps. that codecov/patch action certainly seems to take its time 😄

Well, okay, the reason - i've finally got it =) StrictMode + useFirstMountState - sandbox is using strict mode, if to disable it - issue not presented.
What we know about strict mode - effects are triggered twice, useFirstMountState unable to work wtithin strict mode, since it is based off useRef.

Oh, nice! I should have thought about StrictMode 😆 It's so easy to forget, but should be taken into account when debugging...

But what should be done about this? This bug is very distracting, even if it only exists in StrictMode, ie. during development.

I'm trying to make a solution at the moment, but i see literally no chance of making useIsMounted survivable to doubled effects

Ofc we can make go with solution you proposed, but it is only fix of single symptom, not its source.

Well, this relates to another thing I had in mind earlier today. Why are we using useSafeState in the first place?
According to the React team it is an anti-pattern to check whether the component is mounted or not before setting state. They argue that any state setting functions should be cancelled before the component unmounts instead. They go more detail into this in the blog post. This article talks about the same topic, but is a bit more fresh.

To expand on my previous comment:
From the perspective of a hook library, it essentially should be the user of the stateful hook's responsibility to check that the state is not set after the component has unmounted, not the library's.

Mostly useSafeState used within hooks that are making use of any WEB API or has event handlers, where any event may occur during component unmounts.

Mostly useSafeState used within hooks that are making use of any WEB API or has event handlers, where any event may occur during component unmounts.

Indeed. And the articles I linked both argue that in such situations, it would be correct to cancel the state settings functions (maybe an async event handler or a useEffect making a web request) when the component unmounts, rather than checking for the mounted state before settings state.
As pointed in the second of the articles I referenced, useSafeState merely hides the Can’t perform a React state update on an unmounted component warning. React already does the isMounted check before updating state and gives that warning, if a component is not mounted when a state update is attempted. Doing any isMounted checks application-side merely move the check from React internals to the application, hiding the warning.

it is impossible to cancel async chain midair, in case processing went further direct handlers - you're stuck
im taling about
Promise.
then(()=>{
 await Promise2ThatTakesLotsOfTime()
 // unmount happens here
})

Mostly useSafeState used within hooks that are making use of any WEB API or has event handlers, where any event may occur during component unmounts.

And to respond in the context of this library, useSafeState is also heavily used internally, which appears unnecessary to me, and it also seems to have caused the bug this PR solves (in a way).

it is impossible to cancel async chain midair, in case processing went further direct handlers - you're stuck im taling about
Promise.
then(()=>{
 Promise2ThatTakesLotsOfTime().then(setState)
 // unmount happens here
})

Isn't this possible using the AbortController API, maybe in combination with useEffect?
From the second article
useEffect(() => {
  const abortController = new AbortController()   // creating an AbortController
  fetch(url, { signal: abortController.signal })  // passing the signal to the query
    .then(data => {
      setState(data)                              // if everything went well, set the state
    })
    .catch(error => {
      if (error.name === 'AbortError') return     // if the query has been aborted, do nothing
      throw error
    })

  return () => {
    abortController.abort()                       // stop the query by aborting on the AbortController on unmount
  }
}, [])

In any case, in the article the React team seems to suggest that such state setting functions should be made cancellable.

TBC im sitting with a thought of dropping lots of useSafeState usages for a month or so.
React18 anyway dropped the message about setting state on unmounted component.

I'm glad to hear that! Let me know, if I can help in refactoring away the useSafeState's.

As said - yes, abort controller kinda solves situation, but it is not widely supported.

and frankly speaking its usage quite ugly, only try\catch blocks are uglier.

As said - yes, abort controller kinda solves situation, but it is not widely supported.

and frankly speaking its usage quite ugly, only try\catch blocks are uglier.

AbortController not having wide support if a fair point. Plain promises surely can be cancelled somehow by (ab)using Promise.reject but I don't even want to imagine how tedious that would be. That would be appear to be necessary, however.
Also, using AbortController can get pretty ugly, but useAsyncAbortable makes it a lot prettier 😉 .

welp, everything ended up with complete useStorageValue rework :D

That is probably good, the code felt quite difficult before 😄
I got kind of inspired by our conversation here. What do you think about this:

I open an issue with a complete write up of our discussion here so that everybody can easily see it and take part.
I make a PR with all the internal usages of useSafeState removed.

Also, I noticed that you used this PR's solution for the bug as part of #960 . Do you mind adding the hacktoberfest-accepted label to this PR?

@ArttuOll, are you planning to continue work on react-hookz or is it just hacktoberfest related?

There should be another label for that? i thought just hascktoberfest would be fine

Yeah, if this PR is not merged, but the code is accepted, that's how they know to count this to my score.

Will you be working on this after October

Yes, so no worries that I would just drop everything that I'm working on when this month ends 😁 perhaps not as actively

@ArttuOll what do you think joining team and becoming maintainer?

Well, I'm pretty sure I would be able to find time for that and that would surely be interesting, so count me in!

:tada: This issue has been resolved in version 17.0.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Broken link on online documentation

Not sure if this is the right place to report this, but on the section "using with Webpack" the "edit this doc" button redirects to a broken link.
Looking more in detail the problem seems to be that the links points to the file in docs/Webpack.md while it should be docs/en/Webpack.md.
The same problem applies to all other pages linked in the sidebar.

I would like to work on this issue can you assign this to me ?

@farhaanbukhsh feel free to send a pull request! The website code is in website/

I'm trying to work on this but I keep on getting this error when I go to http://localhost:8080/jest/docs/en/getting-started.html or other docs links.
Has anyone seen this before? Thanks!
500 Error: TypeError: src.replace is not a function Please report this to https://github.com/chjj/marked.
Please report this to https://github.com/chjj/marked.
at /Users/sambakkila/Desktop/myJestFork/jest/website/node_modules/react-page-middleware/src/guard.js:27:12
at onOutputGenerated (/Users/sambakkila/Desktop/myJestFork/jest/website/node_modules/react-page-middleware/src/index.js:96:9)
at Object.done (/Users/sambakkila/Desktop/myJestFork/jest/website/node_modules/react-page-middleware/src/DefaultRouter.js:345:7)
at renderReactPage (/Users/sambakkila/Desktop/myJestFork/jest/website/node_modules/react-page-middleware/src/renderReactPage.js:130:17)
at renderComponentPackage (/Users/sambakkila/Desktop/myJestFork/jest/website/node_modules/react-page-middleware/src/DefaultRouter.js:331:3)
at routePackageHandler (/Users/sambakkila/Desktop/myJestFork/jest/website/node_modules/react-page-middleware/src/DefaultRouter.js:274:5)
at onComputePackage (/Users/sambakkila/Desktop/myJestFork/jest/website/node_modules/react-page-middleware/src/index.js:100:9)
at /Users/sambakkila/Desktop/myJestFork/jest/website/node_modules/react-page-middleware/src/guard.js:29:10
at onWarmed (/Users/sambakkila/Desktop/myJestFork/jest/website/node_modules/react-page-middleware/src/Packager.js:270:9)
at /Users/sambakkila/Desktop/myJestFork/jest/website/node_modules/async/lib/async.js:116:25

@sbakkila You get this error with the latest master and without adding your fix right?
I'm trying to reproduce it but, I'm having some trouble... I'm using node 8, but it is also loading correctly with node 6 and 7 for me.

@rogeliog Yeah, I'm getting this from the latest master with Node v7.10.1

Ok, I'll keep trying to repro it

@rogeliog  Sorry -- I was able to get this to work. I just needed to update my fork or something.
I'm not sure how the html is getting built in build/jest/docs/ outside of build/jest/docs/en.
When I run npm start, that generates the js inside  src/jest/docs/en and but no js directly inside src/jest/docs/. Then when I run npm test, which generates html, all of the html is inbuild/jest/docs/en.
Based on the gh-pages branch, it seems like the docs that are generated are getting copied to also exist in build/jest/docs so that if someone leaves the en out, they can still load the site. This copy of the html has the wrong links (like this link, which started the thread: https://github.com/facebook/jest/edit/master/docs/Webpack.md).
Is there another build script to build the js/html directly in the docs directory that I'm not seeing?

While playing with issue #4256, I ran into your same troubles.
Weird thing is that the API docs and Github repo differs...
Don't know if any of you guys noticed this.
API docs
...
// OtherModule.test.js
const SomeClass = require('SomeClass')
...

Github repo
...
// OtherModule.test.js
jest.mock('SomeClass')
const SomeClass = require('SomeClass')
...

Apparently, they are pointing to 2 different files...?

About to fix this…


Sort the List of people in the addressbook by Skill and SkillLevel

Maybe extend to other properties as well?

Feature completed in PR [#127]


ImportError: No module named oauth2

I recently installed spotipy using:
python -m pip install spotipy --user
which installed without errors.  I then setup my spotify client ID and secret, and when I try to run the example given under "create a Spotify object and call methods" I get the following error:
ImportError: No module named oauth2
Any help on why I am getting this error?  I am assuming the oauth2 module should have been installed when I installed spotipy.

hmm oauth is part of spotipy so it shouldn't be missing.
If from your command line you run python alone, what do you get when you type the following?
>>> import spotipy
>>> spotipy.oauth2

Also please share the full stack traces (the one from the README example as well)

Hi Stéphane,
Thanks for getting back to me.  I found the problem (my python script was named spotipy.py).  When I renamed it everything worked.
Thanks again.
Terry

On Mar 18, 2020, at 4:29 PM, Stéphane Bruckert<EMAIL_ADDRESS>wrote:
hmm oauth is part of spotipy so it shouldn't be missing.
If from your command line you run python alone, what do you get when you type the following?

import spotipy
spotipy.oauth2

Also please share the full stack traces (the one from the README example as well)
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or unsubscribe.


switch to polars

... and remove pandas and pyarrow (will be required by pandas in future versions)
Motivation: polars is more efficient and feasible, polars is used in other our packages mckit-nuclides, xpypact.

Stale issue message


Wire shark Captured TLS/SSL packet decryption using  TLS master secrets with mitmproxy.(Windows 10)

Actully in this question i'm only asking how can i decrypt the SSL packet using TLS master secrets with mitmproxy in windows 10.

I uses the mitmproxy to capture traffic but it doesn't support .pcap format. Somewhere searching i see someone mention the this method

use log the TLS master secrets with mitmproxy

When i dig deep into the method  log the TLS master secrets with mitmproxy i get nothing that can help me understand how to use this.
I'm asking in this form is there anyone who can help, if you tried can explain the procedure.

I'll use wireshark to capture and decrypt the SSL and save in pcap. if you know better procedure to save data in pcap your idea will be strongly appreciated.
Windows 10. or any version

Sorry, it seems like the docs page about this topic got lost in the recent major overhaul of our documentation. Here is a link to the old version, which is still valid: https://mitmproxy.readthedocs.io/en/v2.0.2/dev/sslkeylogfile.html

I've added it using pre master log file with wireshark but i don't understand how to save decrypted packets
in pcap format?


Make GitHub norms document accessible to stakeholders

Goal for this issue is to update the Github Norms document and place it somewhere accessible to our MDSA project stakeholders.

[ ] Cleanup norms doc, add a checklist for users to look at when creating a new issue (TLDR version)
[ ] Move the document into our Docs pages
[ ] Prepare for a working session with stakeholders (starting with CARB)

This may be a helpful guide to pull from: https://docs.google.com/document/d/1mv-0hymSr2WIUgE-9l6P53M44Fd13nQ_QUpgxSIgKTU/edit

@jkarpen add link to the GitHub Norms doc for reference.

Here is the GitHub Guidelines doc from earlier this year that we want to bring into the project docs. https://docs.google.com/document/d/1WK673QArNxdJi-JSf2J30GhmNk45gyYF2WCPLfzE8a8/edit#heading=h.9s45exk8c5x4

Slides with markdown info: https://docs.google.com/presentation/d/1_qY5uI9w6qL_DSVq1t1V80crJNDn3ZkagrMfb0YNC_Y/edit#slide=id.gd01156d741_1_3

Make the changes here ->https://github.com/cagov/data-infrastructure/tree/main/docs
To show up here -> https://cagov.github.io/data-infrastructure/
Create Git Hub Section
Create Project Management Subsection
Create Data Engineering Subsection


Misc. cleanups in Report Editor

@martinpovolny this is first batch of clean-ups of Report Editor controller as promised in #9887.
They are unrelated to each other, as I came through seeing 'things'.  Thus, the easiest way to review this is commit by commit. The next batch will be more compact.
@miq-bot add_label ui, reporting, refactoring
@miq-bot assign @martinpovolny

I have a next batch ready, after this is merged. :rocket:


Shift Backend from Nodejs to plane JavaScript

Is your feature request related to a problem? Please describe.
Shift backend from Nodejs to plane JavaScript. This will make it possible to deploy on GitHub Pages.

Issue
In Node.js backend we could use npm package cors to bypass cors policy. Therefore currently frontend make a request to backend which then make a request to to any platform (like codechef).
When we directly make an API request to any platform from react (http://localhost:3000) then we get a cors error. Need to fix this cors error so that duplicate request from server is not required then.


WidthProvider width is initally 0 preventing resizing of grid item width

When using WidthProvider(Responsive) the width of the provider component is 0 which puts all items on the left hand side and cannot resize them or drag and drop them horizontally. The interesting thing is that once the window is resized, the WidthProvider acts normally. If my browser session expires or I delete all cookies, the issue returns. This is an issue because I am saving coordinates and width per user on layout change, so every time their session expires the items default back. I have tried hard coding the width and that doesn't help. Also tried setting measureBeforeMount = true. See attached for showing state.width is 0

Duplicate of #1320

Duplicate of #1338

I am having the same issue. Did you work out the issue @gph5003 ?

I never did find a solution with the width provider and responsive grid. I ended up using react-grid-layout (non responsive version) and that works fine

I have the same issue, all my items are on the left side, I can't resize them but when using non-responsive everything is working well. I am still looking for a solution.
https://user-images.githubusercontent.com/47487590/103773323-2c2e9c00-502b-11eb-88a0-0e069cb7fd46.mov

I have the same issue, all my items are on the left side, I can't resize them but when using non-responsive everything is working well. I am still looking for a solution.
https://user-images.githubusercontent.com/47487590/103773323-2c2e9c00-502b-11eb-88a0-0e069cb7fd46.mov

@PrieurA What I ended up doing is setting a min width directly on the grid component.
style={{ minWidth: "100%" }}

@PrieurA What I ended up doing is setting a min width directly on the grid component.
style={{ minWidth: "100%" }}


fixed redis v4.6.0 pipelines deprecation warning

for the changed multi method.
https://github.com/redis/redis-rb/tree/v4.6.0#pipelining
Link to the issue
NOTE: I added redis >= 4.6.0 because this pull request will not work for older versions of redis gem.

Thanks a lot!

+1 Thank you! We're looking forward to this getting released.

@pjmelling
Unfortunately, this project is not currently supported and is looking for a new maintainer https://github.com/brainopia/sidekiq-limit_fetch/issues/106
As a temporary option, you may use version from my pull-request in your Gemfile.
But beware, fetching gems directly from a stranger's github is an insecure practice.
gem 'sidekiq-limit_fetch',
  git: 'https://github.com/iurev/sidekiq-limit_fetch',
  branch: 'feature/fix_deprecated_redis_multi'

Thanks!


Compilation hangs with html-loader

Is this a feature request or a bug report?
Bug report
What's gone wrong?
When using HTML templates for components with html-loader and it processes attributes in tags like <img src='./angular.png'> it hangs in compilation. The Webpack config has an appropriate loader for images.
What was meant to happen?
Image attributes handled by the appropriate loader.
Other information
Node v6.5.0
Angular v2.4.8
Webpack v2.2.1
Typescript v2.0.10
Ubuntu 16.04

Hey, I'm aware of why this is happening - will fix tonight

Will this also be fixed for loading HTML? We have a lot of Angular 1.5 components that have template: require("./component.html") in them, which would fail AoT for the whole application.

Sorry for the delay, should be fixed now in 0.1.10. @Itrulia I haven't tested this at all on an Angular 1.5 code base - have you got an example repo I can test it out on?

I will create one for you tomorrow.


added podspec

Resolves #30
DCO1.1 Signed-off-by: Daniel Firsht<EMAIL_ADDRESS>

Hi dfirsht,
Thanks for submitting this pull request!
I can confirm that the DCO1.1 sign-off has been included. It is okay to process this pull request.
dco-bot


UnicodeDecodeError during vivisect loading

a28d8ad738e8f3fe413fb493f754d9c0 is throwing this:
Traceback (most recent call last):
  File "floss/main.py", line 600, in main
    vw = viv_utils.getWorkspace(sample_file_path, should_save=options.save_workspace)
  File "/usr/local/lib/python2.7/dist-packages/viv_utils-0.3.5-py2.7.egg/viv_utils/__init__.py", line 32, in getWorkspace
    vw.loadFromFile(fp)
  File "/usr/local/lib/python2.7/dist-packages/vivisect-0.0.0-py2.7.egg/vivisect/__init__.py", line 2134, in loadFromFile
    fname = mod.parseFile(self, filename)
  File "/usr/local/lib/python2.7/dist-packages/vivisect-0.0.0-py2.7.egg/vivisect/parsers/pe.py", line 30, in parseFile
    return loadPeIntoWorkspace(vw, pe, filename)
  File "/usr/local/lib/python2.7/dist-packages/vivisect-0.0.0-py2.7.egg/vivisect/parsers/pe.py", line 113, in loadPeIntoWorkspace
    vs = pe.getVS_VERSIONINFO()
  File "/usr/local/lib/python2.7/dist-packages/vivisect-0.0.0-py2.7.egg/PE/__init__.py", line 553, in getVS_VERSIONINFO
    return VS_VERSIONINFO(vbytes)
  File "/usr/local/lib/python2.7/dist-packages/vivisect-0.0.0-py2.7.egg/PE/__init__.py", line 161, in __init__
    self._parseBytes(bytes)
  File "/usr/local/lib/python2.7/dist-packages/vivisect-0.0.0-py2.7.egg/PE/__init__.py", line 192, in _parseBytes
    offset, vinfosig = self._eatStringAndAlign(bytes, offset)
  File "/usr/local/lib/python2.7/dist-packages/vivisect-0.0.0-py2.7.egg/PE/__init__.py", line 224, in _eatStringAndAlign
    return offset, ret.decode('utf-16le')
  File "/usr/lib/python2.7/encodings/utf_16_le.py", line 16, in decode
    return codecs.utf_16_le_decode(input, errors, True)
UnicodeDecodeError: 'utf16' codec can't decode bytes in position 70-71: illegal encoding

looks like bug in vivisect PE parser. do you get a nice message or a stack trace when running in basic mode?

Wasn't sure if I should put this on Vivisect or here :)
I do get the cleaner error message but I guess the exception message isn't making it through:
ERROR:floss:Vivisect failed to load the input file:

I'm getting the same error with a WannaCry sample (5ad4efd90dcde01d26cc6f32f7ce3ce0b4d4951d4b94a19aa097341aff2acaec):
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "lib.py", line 15, in get_strings
    vw = get_workspace(path)
  File "lib.py", line 33, in get_workspace
    return load_workspace(path, save_workspace=False)
  File "/[REDACTED]/venv-legacy/lib/python2.7/site-packages/floss/main.py", line 935, in load_workspace
    return viv_utils.getWorkspace(sample_file_path, should_save=save_workspace)
  File "/[REDACTED]/venv-legacy/lib/python2.7/site-packages/viv_utils/__init__.py", line 43, in getWorkspace
    vw.loadFromFile(fp)
  File "/[REDACTED]/venv-legacy/lib/python2.7/site-packages/vivisect/__init__.py", line 2173, in loadFromFile
    fname = mod.parseFile(self, filename)
  File "/[REDACTED]/venv-legacy/lib/python2.7/site-packages/vivisect/parsers/pe.py", line 34, in parseFile
    return loadPeIntoWorkspace(vw, pe, filename)
  File "/[REDACTED]/venv-legacy/lib/python2.7/site-packages/vivisect/parsers/pe.py", line 116, in loadPeIntoWorkspace
    vs = pe.getVS_VERSIONINFO()
  File "/[REDACTED]/venv-legacy/lib/python2.7/site-packages/PE/__init__.py", line 555, in getVS_VERSIONINFO
    return VS_VERSIONINFO(vbytes)
  File "/[REDACTED]/venv-legacy/lib/python2.7/site-packages/PE/__init__.py", line 161, in __init__
    self._parseBytes(bytes)
  File "/[REDACTED]/venv-legacy/lib/python2.7/site-packages/PE/__init__.py", line 192, in _parseBytes
    offset, vinfosig = self._eatStringAndAlign(bytes, offset)
  File "/[REDACTED]/venv-legacy/lib/python2.7/site-packages/PE/__init__.py", line 224, in _eatStringAndAlign
    return offset, ret.decode('utf-16le')
  File "/[REDACTED]/venv-legacy/lib/python2.7/encodings/utf_16_le.py", line 16, in decode
    return codecs.utf_16_le_decode(input, errors, True)
UnicodeDecodeError: 'utf16' codec can't decode bytes in position 268-269: illegal UTF-16 surrogate

or the CLI version:
$ ~/Downloads/floss --no-static-string 5ad4efd90dcde01d26cc6f32f7ce3ce0b4d4951d4b94a19aa097341aff2acaec
ERROR:floss:Vivisect failed to load the input file:

working in current vivisect/floss:

a28d8ad738e8f3fe413fb493f754d9c0
5ad4efd90dcde01d26cc6f32f7ce3ce0b4d4951d4b94a19aa097341aff2acaec


Contributing guidelines

This CONTRIBUTING.md is inspired by https://github.com/fluxcd/flux2/blob/main/CONTRIBUTING.md
Once it becomes more clear how the codebase gets structured and how people can write plugins (e.g. hashicorp vault for keystorage etc.) we can elaborate a bit more.
@SteveLasker
See here for a rendered view:
https://github.com/marcofranssen/nv2/blob/contributing-guidelines/CONTRIBUTING.md

Thanks @marcofranssen,
With the governance merged, lets see what we can do to cull this down to notation, and overall guidance to the overall notary project.
Adding @bridgetkromhout & @lachie83 for suggestions


remove debug messages?

Is there any ways to remove the debug messages?
I am simply trying to run a code. But when running the jar artifact file, it show the following as the first line:
0 [main] DEBUG com.jayway.jsonpath.internal.path.CompiledPath  - Evaluating path: $['pageInfo']['pageName']
How to ignore this line?

here is the code to be added:
LoggerContext logContext = (LoggerContext) LoggerFactory.getILoggerFactory();
ch.qos.logback.classic.Logger log = logContext.getLogger("com.jayway.jsonpath.internal.path.CompiledPath");
log.setLevel(Level.INFO);

We also need this in the dependencies:
<dependencies>
   <dependency>
      <groupId>org.apache.logging.log4j</groupId>
      <artifactId>log4j-api</artifactId>
      <version>2.11.1</version>
   </dependency>
   <dependency>
      <groupId>org.apache.logging.log4j</groupId>
      <artifactId>log4j-core</artifactId>
      <version>2.11.1</version>
   </dependency>
   <dependency>
      <groupId>ch.qos.logback</groupId>
      <artifactId>logback-classic</artifactId>
      <version>1.2.3</version>
   </dependency>
</dependencies>

Can we reopen this? Isn't there a way to turn this off without adding a log4j dependency? Log4j is considered a security vulnerability these days by most organisation's security people.


CDN install instructions

@aaronhans Feel free to add details for this. Thanks.

We don't have this in the docs yet
Possible text we could use for all components:
We recommend using a build system and bundling your javascript for faster performance.
If you don't use a build system you can include the code from our CDN with a script tag
<script type="modue" src="https://s3.us-west-1.amazonaws.com/cdn.designsystem.webstandards.ca.gov/components/ds-feedback/v1.0.11/dist/index.js"></script>

The values above are unique to each version of each component
We can provide the CSS files on a CDN too. This hasn't been done yet

All of the components have a CDN publishing step integrated into their npm release workflow now. When you create a new version its assets become available at a version specific url. These can be included with a script tag or css import and there is no need for a local package installation or build system.
This is a huge improvement in developer usability and we had to take this step to roll the feedback component out on www.ca.gov.
@wrendo @mediajunkie let us know if you think we can go for including this info in all the readmes now

My personal thought is to incorporate immediately post launch and line it up for content QA. I’d hate to break content lock right now pre launch.
@mediajunkie welcome your thoughts.

I agree. let’s stage it and release in the first post-lock update.
On Fri, Jan 21, 2022 at 10:56 AM Ehb Teng @.***> wrote:

My personal thought is to incorporate immediately post launch and line it
up for content QA. I’d hate to break content lock right now pre launch.
@mediajunkie https://github.com/mediajunkie welcome your thoughts.
—
Reply to this email directly, view it on GitHub
https://github.com/cagov/design-system/issues/324#issuecomment-1018776214,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAYT54UVLRW6DURCWHTL4QTUXGT5LANCNFSM5LUYEISA
.
You are receiving this because you were mentioned.Message ID:
@.***>

--
Christian Crumlish
Product Manager | Office of Digital Innovation
Digital Crisis Standard
https://github.com/cagov/covid19/wiki/Crisis-Standard - covid19.ca.gov
415-672-5759 | @.***
Follow us:
web https://alpha.ca.gov/ | blog https://medium.com/cadotgov | twitter
https://twitter.com/cadotgov

Assigning to @m-sullivan7 for content review

It looks like this is the content to review:

Possible text we could use for all components:
We recommend using a build system and bundling your javascript for faster performance. If you do not use a build system, you can include the code from our CDN with a script tag
<script type="modue" src="https://s3.us-west-1.amazonaws.com/cdn.designsystem.webstandards.ca.gov/components/ds-feedback/v1.0.11/dist/index.js"></script>

I incorporated a couple of changes ("do not" for "don't" and added a comma. It looks good to me with those changes! Is there anything else to look at @aaronhans?

Thanks for reviewing @m-sullivan7!
@jaredwyee @mediajunkie @chachasikes @zakiya @xjensen the plan is to incorporate this text into the readmes of all javascript components:
We recommend using a build system and bundling your javascript for faster performance. If you do not use a build system, you can include the code from our CDN with a script tag

We can provide this instruction for CSS only components:
@import url("https://cdn.designsystem.webstandards.ca.gov/components/ds-button-grid/v2.0.2/index.css")
^ I need to get the cdn.designsystem.webstandards.ca.gov DNS setup first.
Any suggestions for improvements? OK to proceed?

to be completed by 4/22

didnt make it into 4/22 sprint, moving to 5/5

@aaronhans moving to this month's sprint. assigning to @chachasikes

@yesenia-gtz This would have prevented https://github.com/cagov/design-system/issues/914
I'm going to open it, call it a Bug and assign it.

added labels to this

It looks like this is blocked until we finish setting up the cdn.designsystem.webstandards.ca.gov domain.
@yesenia-gtz @aaronhans Can we submit this DNS request ourselves? Or, does it need to be initiated over at CDT? I'm not sure who owns designsystem.webstandards.ca.gov, who's managing it within Domain Request, and/or if any approvals would be needed.

@artuoma @kkoryaka can you help with domain needs for designsystem.webstandards.ca.gov? see note above for details.

Update! Looks like @aaronhans is kicking off the domain request in Service Now. We may need some kind of approval from the CDT side though, depending upon who's in charge of that domain.

I created the CloudFront distribution, the AWS certificate manager request and a service now ticket for CDT to create the DNS records which asks for the following:
Please create the following new DNS records so we can claim the certificates and route traffic to the new hosts for design system asset hosting:

Records to validate domain ownership for https certificate generation:
type: CNAME
name: _db251dbb84c993d92be011bc3276dbc0.cdn.designsystem.webstandards.ca.gov.
value: _8820bb2968cfbced07f7d0e6c2849302.vrztfgqhxj.acm-validations.aws.

Records to route traffic to host:

type: CNAME
name: cdn.designsystem.webstandards.ca.gov
value: d3ada6avnmc9zt.cloudfront.net

All DNS records can be created at the same time

We'll probably need someone like @artuoma to approve it
CDT Service now ticket #CS0053184

@aaronhans Art is out all next week, but I can escalate to Blaine for approval if needed. If you have a link to share along side the service ticket number I can do that now.

https://services.cdt.ca.gov/csm?id=csm_ticket&table=sn_customerservice_case&sys_id=1e7634381b8119548c7eed7bbc4bcbb2&view=csp

Thanks @yesenia-gtz! The ticket is completed, DNS records are in place

@aaronhans just learned that DNS requests are managed via Service Now and route to OTech's Network team, who manages all of our DNS entries. These requests should take 1-2 business days to go through. If the DNS request appears to be held up, let me know, Blaine will know who to reach out to on that team if need be, but they're usually pretty quick about turning those requests around in the standard timeframe.

excellent, glad to hear!

@aaronhans @yesenia-gtz Before we close this issue, can we confirm that instructions have been written and are accessible to the public? We should also have someone else QA/verify those instructions. Maybe one of the OET engineers?

We haven't (or at least I haven't) written the instructions yet. Just had to get this CDN thing fixed before we could even begin. So I think this should definitely stay open.

I've updated one document with CDN instructions in #919. Sample page is here:
https://cdn-install-instructions.pr.designsystem.webstandards.ca.gov/pr/cdn-install-instructions/components/accordion/readme/
Let me know if this looks good, then I'll do the rest of the components.
IMO, there's a lot we could do to improve these readme documents. I'm ignoring all of that right now just to get these CDN details into the site.

For now lets add an H3 above the instructions like so and change "javascript" to "JavaScript":
CDN installation
We recommend using a build system and bundling your JavaScript for faster performance. If you do not use a build system, you can include the code from our CDN with a script tag.

Can you write up your suggestions for improving readme docs in a new issue and assign to me? We want to move to letting research drive improvements to the docs but if there are easy wins we can probably implement now.

I added your changes to the PR, and I'll move onto the rest of the components now.
My main suggestion about the docs is that...research is needed. There are too many assumptions about our audience and their needs. Thankfully, it sounds like we're already on the path. I also suspect we're trying to address too many audiences in those documents (content designers, devs, auditors) without serving anyone particularly well. No easy wins here.

I've reached an impasse in the PR due to the problem described in #923. Bringing the file structure of our components into consistency may be the best way to fix our CDN uploads, which would then allow us to include CDN install instructions.
The following components are affected.

icons
highlight-section
base-css
combined-css
link-icon
table
regulatory-outline

We should get consensus before changing the directory structure but it makes sense to me to use dist everywhere. We've made a lot of progress on standardization already and this seems logical.
The only downside I can see is that there can be a component that uses plain CSS and in that case copying a src css file unchanged to a dist folder purely for the sake of standardization is a tiny bit of rigamarole but the standardization wins probably overwhelm that concern.

I love the rigamarole approach (sad that it's rigamarole, but it's consistent and easy to follow)
For validation: am doing this same thing in some DCC work for an upgrade on responsive table markup for an upcoming feature. https://github.com/cagov/cannabis.ca.gov/issues/514

I'm going to go ahead and try this component dist reorganization in #919, since it's a blocker for that PR.
We will need to publish new major versions for most of our components, per #923.

The dist changes have now been applied to #919.

CDN instructions have now been added to almost all components via #919.
The main exceptions are base-css and combined-css, which need way more help with their docs than just CDN instructions. I also did not add CDN instructions to icons; we may want to have a more extended conversation about how to offer that via CDN. (For example, should we offer consumers a UI to build their own hosted icon bundles?)
I'd recommend closing this and opening up new Issues for the three previously mentioned components.

Definitely no need to create a CDN distro of the icons component. This is more evidence that it doesn't belong in the same category as the other components. It's actually a more of a tool. I wonder if we should classify base-css and combined-css differently as well. Agree about the need for readmes on both of those. Even if they just explain the purpose of the packages.

I agree:

base-css is currently a few separate components mushed into one, we should split it up into cleaner, better documented focused components as described here: https://github.com/cagov/design-system/issues/794 each of those smaller components can have its own documentation and dist folder.
combined-css is a tool to make it easier to grab all the CSS and this doesn't have to be checked into the repo. The current combined-css component can be made obsolete if we take the next step towards hosting assets on a CDN and provide versioned bundles of all the components. This is a quick stop on the way to dynamic versioned bundles of any set of components described here: https://github.com/cagov/design-system/issues/770

I agree with the idea of having other categories for things that don't cleanly fit our definition of component. Even though icons does have some component-ish things inside, like the <cagov-icon> custom element, it's different enough overall to warrant that kind of consideration.
I'm thinking ahead to a future when we'll have more streamlined build and publish tools across all components. Having special cases like icons will complicate that effort if we can't set it aside, into a separate bucket of things.
It sounds like we're also going to retire both bass-css and combined-css, eventually. Sounds good. I'm glad I skipped them here!

At any rate, we can continue the conversation, but I'm going to close this because the work on this Issue is effectively finished.


Navigation

Please, add a Next button to this, so one can navigate the documentation without thinking where I left.

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

ID: 36f27118-7ff2-709d-b14f-6b9c1da648cc
Version Independent ID: ad44e4f1-0173-574d-ebf9-83534aab2f9a
Content: Authorization in ASP.NET Core
Content Source: aspnetcore/security/authorization/index.md
Product: aspnet-core
GitHub Login: @Rick-Anderson
Microsoft Alias: riande

@erick2red  we only use Next when a tutorial has to be followed in order. That wouldn't apply here.

That's not the next article. There is no order. They are loosely related. You are looking at  Authorization in ASP.NET Core - right?

@erick2red  adding Next would imply an order, something we don't want to do.


Consider using git subtree

remote="$GITHUB_SERVER_URL/$GITHUB_REPOSITORY.wiki.git" # Or similar string concatenation
ref=$(git subtree split -P "$INPUT_PATH")
git push -f "$remote" "$ref:master"

This would...

Keep a mirrored history of all the commits with proper authors and proper history for free since you are just "splitting out" a specific subfolder of git
Make it so you have to commit things to the repo if they are generated by bots in the action itself (like a generated CHANGELOG.md that isn't committed, but want to post it to the wiki)
Avoid the need to take inputs about the author and commit message and everything

Note that 2 is likely a downside, but could be mitigated; you can either force the user to use a commit action or git add CHANGELOG.md && git commit -am "Create changelog" themselves, or automagically run git commit in the action itself.
This probably would warrant a version bump. Currently, you're at v0.

I'd love to contribute code to do this. ❤
/ref https://github.com/Andrew-Chen-Wang/github-wiki-action/issues/18

When/if this happens, add "🌲 Uses git subtree to preserve history even in the wiki viewer" to the readme emoji bullet point list thing

Some thoughts:
In https://github.com/spenserblack/actions-wiki/issues/8#issue-1619587195 you posted an example where git subtree is used. As far as I could tell, the wiki's commits did have the same messages and authors, but different SHAs. Using the message(s) of the workflow's trigger is cool, but I think it's a reasonable default to include the SHAs in the wiki commit messages. This would act like a sort of "proof" where users can link their wiki history to their repo history, if necessary. Just something to consider, but I don't think it should block subtree-ing if it's too much work.

Avoid the need to take inputs about the author and commit message

I think that any action that makes commits should give users the ability to set the commit message via an input. In fact, this is making me think that not having author-name and author-email inputs was an oversight that I should add in :laughing:
Right now this action is basically "squashing" changes in the wiki. This is personally what I like, but I can definitely see how other users would prefer to "subtree". So I'm thinking that we can have an input called strategy (I'm open to suggestions on the name :slightly_smiling_face:), with possible values squash and subtree. Even though this is v0, I'd like to avoid a breaking change, so keep the default value at squash. The value of inputs.strategy can dynamically pick which script to run. Maybe even ./${{ inputs.strategy }}.sh. We better not ever have ./secret-script-that-exposes-our-secrets.sh if we do that :laughing: Probably best to have some sort of validation anyway.
Perhaps the commit-message input would be valid only for the "squash" strategy.

In #8 (comment) you posted an example where git subtree is used. As far as I could tell, the wiki's commits did have the same messages and authors, but different SHAs

This is correct because it literally reconstructs a new wholly original orphaned branch. At least, that's my understanding...

I think it's a reasonable default to include the SHAs in the wiki commit messages. This would act like a sort of "proof" where users can link their wiki history to their repo history, if necessary.

True.... but honestly I don't think this happens all the much. It's a good valid concern, and certainly a caveat, but I think that the commit messages and dates (dates are probably more important, especially for nontechies who just want a rough idea of who and when) are enough for most cases. You can also put in the "alternatives" section that "there are other actions where you can generate a new commit message and customize the committer to a greater extent" or similar?
If I'm being totally honest, the reason I used git subtree over the traditional copy-to-a-folder-then-git-init-the-remote-add-then-add-all-then-message-then-commit is because it was simply so much easier to do in three lines vs like 40 to get all the processing of constructing, copying, validating, pushing, authenticating, etc.

I think that any action that makes commits should give users the ability to set the commit message via an input. In fact, this is making me think that not having author-name and author-email inputs was an oversight that I should add in 😆

yeah you can check out the wealth of options and complexity that commits can have in https://github.com/EndBug/add-and-commit which might be a good case to use and just pass-through all the options that the user gives straight into that action. Since we currently use a composite action, we can do that!

Right now this action is basically "squashing" changes in the wiki. This is personally what I like, but I can definitely see how other users would prefer to "subtree". So I'm thinking that we can have an input called strategy (I'm open to suggestions on the name 🙂), with possible values squash and subtree. Even though this is v0, I'd like to avoid a breaking change, so keep the default value at squash. The value of inputs.strategy can dynamically pick which script to run. Maybe even ./${{ inputs.strategy }}.sh. We better not ever have ./secret-script-that-exposes-our-secrets.sh if we do that 😆 Probably best to have some sort of validation anyway.
Perhaps the commit-message input would be valid only for the "squash" strategy.

Sounds like a good name for an option. I'd first look at all the official actions and maybe @wow-actions to see if there's any prior art of names (consistency is often -- but not always -- good)
This sounds remarkably similar to Andrew-Chen-Wang's options that are being discussed.... 🤔

Even though this is v0, I'd like to avoid a breaking change,

I don't think this should concern you in the slightest. You have literally 4 users. Three of which are yourself. 😉
opinion time And it's OK to make breaking changes you're not locked in to the past. This is something you would def need to consider if you had automatic rollover (like from v1.1.1 to v1.1.2 when using a v1 tag) but I think now is the perfect time to bump major versions, play with settings, and see what ideas stick. In this case, that means playing around with git stuff and PRs for a few days/weeks before releasing v1 and some nice release notes. But that's how I'd do it. I'm not you.

You have literally 4 users. Three of which are yourself.

75% of my userbase wants squash to be the default strategy :rofl:
But on a serious note, regardless of whether or not it's breaking, I'm leaning towards squash being the default because it's closer to the behavior I had in mind. That behavior was "Just update the wiki, my history is in the repo" :laughing: I'm obviously biased since it's the default I want. But I think it might be a bit easier to migrate to using this action using the "squash strategy" (like what happened on onefetch). Plus the squash strategy allows one to control the commit message, since it's guaranteed to be one commit per push.
I should note that I'm probably influenced by deploying to GitHub Pages, where the src history mattered, but the destination history didn't matter nearly as much.

75% of my userbase wants squash to be the default strategy 🤣

I'll be honest, the squash strategy is growing on me... I just heavily dislike the idea of a commit message. Heck, why is there even a commit message to set? You hardly ever see it...
Radical proposal (I might regret or backtrack this later): use the env field as kinda like super-mega-secret-options sorta like how Git uses them to configure commits. Basically I'm saying that we can re-use the kinda infra the Git has laid out. You rarely need to modify it, and you rarely should need to, but sometimes you do.
https://git-scm.com/book/en/v2/Git-Internals-Environment-Variables#:~:text=case-insensitive manner.-,Committing,-The final creation

Since this is as good a place as any, here's the .zip of my jcbhmr/publish-wiki-action repo that I have since deleted.
publish-wiki-action-OLD-main.zip

Heck, why is there even a commit message to set?

Well, this action has a default commit, so the user doesn't need to set it.

My bad, I was conflating this repo with Andrew-Chen-Wang/github-wiki-action where you are required to set token, name, commit message, and author email. Sorry! 😬 I directed my frustration at the wrong source.
Yes, I do think that your default commit message is pretty good. SHA in message + date from metadata seems good 👍

I think I wouldn't want to make the user use env:, because it's less discoverable IMO than inputs. It would also make the user read some docs to know what environment variables are OK, while they can just read the inputs: field in action.yml to know what inputs are supported.

That was kinda the goal of the proposal lmao: make it dilberately "secret" to discourage use kinda like how git does it for setting/overriding commit author stuff.
But yeah I'm kinda indifferent now to my original radical idea. Coming back after a day really can switch your perspective. If you want to put them in inputs, fine by me. I just kinda figured that there was an existing convention to override that sort of stuff.  I could see "message" being an input field, with all the Git author stuff being env. Or all inputs like https://github.com/EndBug/add-and-commit

To bring this back on-topic tho back to using git subtree vs copy+commit
I think that the idea of git subtree is interesting and could be an option like you mentioned "strategy", but I think I'm warming to your comparison of actions/deploy-pages where it just grabs a folder and pushes it to a website; similarly this action should just grab a folder and push to a wiki.
Actually, this brings back my naming idea lmao #14

but on a serious note, I think this issue comes down to the question
Do you want to implement a strategy option?
if yes = pr and close issue
if no = close as unplanned
As you may have noticed, I'm interested in assisting. 😜


Data Loading for ViViT

Hi,
I followed the data processing instruction to prepare the tfrecord files, but I got this error when trying to start training.
2021-11-11 09:47:39.233273: W tensorflow/core/framework/op_kernel.cc:1692] OP_REQUIRES failed at example_parsing_ops.cc:480 : Invalid argument: Name: <unknown>, Key: image/encoded, Index: 0.  Number of values != expected.  values size: 100 but output shape: []
2021-11-11 09:47:39.233739: W tensorflow/core/framework/op_kernel.cc:1692] OP_REQUIRES failed at example_parsing_ops.cc:480 : Invalid argument: Name: <unknown>, Key: image/encoded, Index: 0.  Number of values != expected.  values size: 100 but output shape: []
2021-11-11 09:47:39.242622: W tensorflow/core/framework/op_kernel.cc:1692] OP_REQUIRES failed at example_parsing_ops.cc:480 : Invalid argument: Name: <unknown>, Key: image/encoded, Index: 0.  Number of values != expected.  values size: 100 but output shape: []
2021-11-11 09:47:39.251052: W tensorflow/core/framework/op_kernel.cc:1692] OP_REQUIRES failed at example_parsing_ops.cc:480 : Invalid argument: Name: <unknown>, Key: image/encoded, Index: 0.  Number of values != expected.  values size: 100 but output shape: []
    app.run(main=main)
  File "/workspace/scenic/app.py", line 64, in run
    app.run(functools.partial(_run_main, main=main))
  File "/usr/local/lib/python3.8/dist-packages/absl/app.py", line 303, in run
    _run_main(main, args)
  File "/usr/local/lib/python3.8/dist-packages/absl/app.py", line 251, in _run_main
    sys.exit(main(argv))
  File "/workspace/scenic/app.py", line 96, in _run_main
    main(rng=rng, config=FLAGS.config, workdir=FLAGS.workdir, writer=writer)
  File "scenic/projects/vivit/main.py", line 34, in main
    trainer(
  File "/workspace/scenic/projects/vivit/trainer.py", line 230, in train
    train_batch = next(dataset.train_iter)
  File "/usr/local/lib/python3.8/dist-packages/flax/jax_utils.py", line 147, in prefetch_to_device
    enqueue(size)  # Fill up the buffer.
  File "/usr/local/lib/python3.8/dist-packages/flax/jax_utils.py", line 144, in enqueue
    for data in itertools.islice(iterator, n):
  File "/workspace/scenic/projects/vivit/data/video_tfrecord_dataset.py", line 452, in <genexpr>
    current_ds_iterator = (
  File "/usr/local/lib/python3.8/dist-packages/tensorflow/python/data/ops/iterator_ops.py", line 761, in __next__
    return self._next_internal()
  File "/usr/local/lib/python3.8/dist-packages/tensorflow/python/data/ops/iterator_ops.py", line 744, in _next_internal
    ret = gen_dataset_ops.iterator_get_next(
  File "/usr/local/lib/python3.8/dist-packages/tensorflow/python/ops/gen_dataset_ops.py", line 2728, in iterator_get_next
    _ops.raise_from_not_ok_status(e, name)
  File "/usr/local/lib/python3.8/dist-packages/tensorflow/python/framework/ops.py", line 6941, in raise_from_not_ok_status
    six.raise_from(core._status_to_exception(e.code, message), None)
  File "<string>", line 3, in raise_from
tensorflow.python.framework.errors_impl.InvalidArgumentError: Name: <unknown>, Key: image/encoded, Index: 0.  Number of values != expected.  values size: 80 but output shape: []
	 [[{{node ParseSingleSequenceExample/ParseSequenceExample/ParseSequenceExampleV2}}]] [Op:IteratorGetNext]

Hello
It looks like the data was not preprocessed correctly. You can also check the dataset with the unit test here (adjust the paths accordingly), or using a Jupyter / Colab notebook to examine a few examples from the data-loader.
Unfortunately, I cannot release the TF-Records for the datasets used in the ViVIT paper due to licensing issues, and also the fact that Kinetics videos may be removed from YouTube.

Ok, Thanks! I will check the unit test.

Closing this issue. Feel free to reopen if you had any additional question.


Difficulty killing runaway threads

The following:
(in-package :cl-user)

(defun infinity ()
  (loop do (progn (print "Hello, World!")) (sleep 1)))

(infinity)

can be killed using the Threads tree view without any issue. It happens immediately.
 It is necessary to restart the LSP using Developer: Reload Window or kill VSCode and restart it. Even that takes a non-trivial amount of time.
There may be nothing to do here other than avoiding code with tight infinite loops.

 There is a thread that doesn't go away but it can be killed.


sidekick instances get registered as targets to the LB

Steps to reproduce:

Create and activate service with sidekicks.
Add Load Balancer. Register service created on step 1) to the LB.
Activate the LB service. Its important that the LB service gets activated as the last step as thats what caused buggy behavior.

Bug: only instances of primary service should have been registered to the LB, but I'm seeing instances of the sidekicks registered as well.

This issue is reproduced when the LB service is activated after the targets gets added.
Following steps will results in the bug:
Create a service - s1 with sidekick and activate it.
Create LB service.
Add service s1 as target to LB service.
Activate LB service.
Instances of primary service as well as sidekick instances gets added as targets to the LB service.
In the following set of steps where targets are added after the LB service is activated , only instances of the primary services get added as targets to LB service.
Create a service - s1 with sidekick and activate it.
Create LB service.
Activate LB service.
Add service s1 as target to LB service.

Tested with build from v0.43.0-rc1
Tested the following flow when adding LB services:
Create a service - s1 with sidekick and activate it.
Create LB service.
Add service s1 as target to LB service.
Activate LB service.
Only Instances of primary service gets added as targets to the LB service.


rss + seo + sitemap integration implementation

Added files and dependencies for SEO improvement.
Also, for the RSS feed, events were taken to keep users informed.

Deployed locally.
Our to-be-implemented linter and formatter, biome, raised two exceptions, but were trivial -- and we haven't finished to setup our CI pipeline, so no issues there --.

It deploys locally -- through astro dev --; builds -- astro build -- and everything is fine.
Thank you so much!,
Brayen


Probably unused file PFBlockRetryer

I've been investigating how Parse for iOS does retrying upon -saveEventually and found PFBlockRetryer class which is not included anywhere but tests. Is this file no longer used? Can I rely on this class in the future or it will be deleted?

Hey @nskboy , good find. It in indeed unused and we should remove it to keep the ask free of dead code.

The logic for retrying on saveEventually calls actually lives in PFEventuallyQueue
Another piece of retrying logic that we have lives in PFURLSessionCommandRunner, but that is used rather for saveInBackground or any other network request.

Thanks for providing more details about retrying!


{AKS} Sort out test cases

Description

Sort out test cases

Merge test cases for private cluster, private dns zone, api sever authorized range and default create.

Sort out parameter declaration

Testing Guide

History Notes

[Component Name 1] BREAKING CHANGE: az command a: Make some customer-facing breaking change
[Component Name 2] az command b: Add some customer-facing feature

This checklist is used to make sure that common guidelines for a pull request are followed.

[ ] The PR title and description has followed the guideline in Submitting Pull Requests.

[ ] I adhere to the Command Guidelines.

[ ] I adhere to the Error Handling Guidelines.

AKS


Truncating reviews to 250 words

First of all Thanks for the oriole tutorial, I really enjoyed it.
I noticed that you truncate all the reviews to 250 words, I assume this is for convenience.  Would it be better to use all of the use the entire text of the reviews? Do you know of any resources you could point me to that would show me ways of implementing that?
I appreciate your help.
Thanks,
Michael

I think it would definitely be ideal to use the entire text, especially because the sentiment or meaning of a text can change with the last sentence(s) of a text. The reasoning I had for truncating was that if I didn't, I would have a lot of padding tokens in my input, and I was a little bit unsure as to how that would affect accuracy/training of the model. I'd be curious to see if you increased the maxLength to 350 or 450 and see if that changes anything in terms of the convergence for training or just the effectiveness in general. Would also recommend just Googling "large length input to rnn".  You'll see quite a few approaches.


Add logging guideline section.

Add logging guideline section.

This still needs more work.
@MaxJPRey, can you add general logging guidelines at the top of this section? We explain how, but not why we log.  I think adding several best practices would be helpful.

This still needs more work.
@MaxJPRey, can you add general logging guidelines at the top of this section? We explain how, but not why we log. I think adding several best practices would be helpful.

@akaszynski I just added a "Why and when to log" section.


refactor(consensus): change the broadcast fn in context to take ref mut self

This allows us to remove the Arc and also avoid cloning the sender on every call.
The cost is that we leak the fact that futures Sender requires .

This change is

[!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

#2241  👈
#2239
#2238
#2237
main

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

Join @matan-starkware and the rest of your teammates on  Graphite


Improve formatting of big diffs

When snapshots get big, its hard to spot the differences in the unified diff that we print. We should maybe reduce the diff to only print the lines in which something changed.
TextSnapshot class should get an option to configure the number of context lines that are to be printed around a certain change

Will be released with 1.5.0


fatal error LNK1104: cannot open file 'libboost_regex-vc141-mt-gd-x32-1_67.lib'

Hello,
I encounter the following error for bootstrap-vcpkg.bat (I have not modified .vcxproj file, fresh download).

Building vcpkg.exe ...
Vcpkg is unable to link because we cannot decide between Release and Debug libraries. Please define the property Vc
pkgConfiguration to be 'Release' or 'Debug' (currently 'release').
pch.cpp
checks.cpp
[...]
vcpkgpaths.cpp
versiont.cpp
vcpkglib.vcxproj -> C:\libraries\vcpkg-master\toolsrc\release\vcpkglib.lib
Vcpkg is unable to link because we cannot decide between Release and Debug libraries. Please define the property Vc
pkgConfiguration to be 'Release' or 'Debug' (currently 'release').
vcpkg.cpp
Generating code

I also encounter this in VS after vcpkg integrate install

1>LINK : fatal error LNK1104: cannot open file 'libboost_regex-vc141-mt-gd-x32-1_67.lib'

Windows 10.0.17134, latest vcpkg as of today.

Hi @JBSedich,
The first one is a known issue that we are working on. You can safely disregard it for now.
Regarding the second one:

Does removing integration with vcpkg integrate remove make the problem go away?
Can you remove and install boost to make sure it is properly installed?

Relate to #2790

Hi everyone, boost has been updated to 1.73.0, so I guess this issue was resolved.
Please reopen this issue if it still bother you,
Thanks.


Failed to activate the pulsar-ide-python package

No native build was found for platform=darwin arch=arm64 runtime=electron abi=87 uv=1 armv=8 libc=glibc node=14.16.0 electron=12.2.3
loaded from: /Users/d/.pulsar/packages/pulsar-ide-python/node_modules/zadeh
Steps to reproduce:
Macbook m1 Ventura 13.5.2

Install puslar For Apple Silicon (M1/M2) macs version (no previous installs)
Go to settings and install pulsar-ide-python package.

Got and issue
No native build was found for platform=darwin arch=arm64 runtime=electron abi=87 uv=1 armv=8 libc=glibc node=14.16.0 electron=12.2.3
loaded from: /Users/d/.pulsar/packages/pulsar-ide-python/node_modules/zadeh

Im gettting the same issue.
Versions
Pulsar: 1.109.0 arm64
Electron: 12.2.3
OS: macOS 13.5
Thrown From: pulsar-ide-python package 1.10.3
Stack Trace
Failed to activate the pulsar-ide-python package
At No native build was found for platform=darwin arch=arm64 runtime=electron abi=87 uv=1 armv=8 libc=glibc node=14.16.0 electron=12.2.3
    loaded from: /Users/<deleted>/.pulsar/packages/pulsar-ide-python/node_modules/zadeh

Error: No native build was found for platform=darwin arch=arm64 runtime=electron abi=87 uv=1 armv=8 libc=glibc node=14.16.0 electron=12.2.3
    loaded from: /Users/<deleted>/.pulsar/packages/pulsar-ide-python/node_modules/zadeh

    at Function.load.resolve.load.path (/packages/pulsar-ide-python/node_modules/node-gyp-build/node-gyp-build.js:60:9)
    at load (/packages/pulsar-ide-python/node_modules/node-gyp-build/node-gyp-build.js:22:30)
    at /packages/pulsar-ide-python/node_modules/zadeh/index.js:1:2743)
    at /packages/pulsar-ide-python/node_modules/zadeh/index.js:4:3)
    at Module._compile (/app.asar/src/native-compile-cache.js:120:30)
    at /app.asar/src/compile-cache.js:252:23)
    at Module.load (internal/modules/cjs/loader.js:935:32)
    at Module._load (internal/modules/cjs/loader.js:776:14)
    at Function.f._load (electron/js2c/asar_bundle.js:5:12913)
    at Function.o._load (electron/js2c/renderer_init.js:33:379)
    at Module.require (internal/modules/cjs/loader.js:959:19)
    at require (/app.asar/src/native-compile-cache.js:67:27)
    at /packages/pulsar-ide-python/node_modules/atom-languageclient/build/lib/adapters/autocomplete-adapter.js:15:17)
    at /packages/pulsar-ide-python/node_modules/atom-languageclient/build/lib/adapters/autocomplete-adapter.js:441:3)
    at Module._compile (/app.asar/src/native-compile-cache.js:120:30)
    at /app.asar/src/compile-cache.js:252:23)
    at Module.load (internal/modules/cjs/loader.js:935:32)
    at Module._load (internal/modules/cjs/loader.js:776:14)
    at Function.f._load (electron/js2c/asar_bundle.js:5:12913)
    at Function.o._load (electron/js2c/renderer_init.js:33:379)
    at Module.require (internal/modules/cjs/loader.js:959:19)
    at require (/app.asar/src/native-compile-cache.js:67:27)
    at /packages/pulsar-ide-python/node_modules/atom-languageclient/build/lib/auto-languageclient.js:19:32)
    at /packages/pulsar-ide-python/node_modules/atom-languageclient/build/lib/auto-languageclient.js:952:3)
    at Module._compile (/app.asar/src/native-compile-cache.js:120:30)
    at /app.asar/src/compile-cache.js:252:23)
    at Module.load (internal/modules/cjs/loader.js:935:32)
    at Module._load (internal/modules/cjs/loader.js:776:14)
    at Function.f._load (electron/js2c/asar_bundle.js:5:12913)
    at Function.o._load (electron/js2c/renderer_init.js:33:379)

Commands
  3x -4:18.4.0 core:copy (atom-notification.fatal.icon.icon-bug.native-key-bindings.has-detail.has-close.has-stack)

Non-Core Packages
autocomplete-python 1.17.1
busy-signal 2.0.1
ide-cpp 0.1.0
intentions 2.1.1
language-rust 0.4.12
language-vue 0.26.2
language-vue-component 0.5.0
linter 3.4.0
linter-rust 1.0.1
linter-ui-default 3.4.1
pulsar-ide-python 1.10.3
python-black 0.7.0
turbo-javascript 1.4.0

Additional Information

At the moment this one is out of my reach, the zadeh module is actually a dependency of atom-languageclient which is sorely in need of an update or replacement... Do you have this same issue with other LSP-related Pulsar packages as well?

This is related to the issues here
atom-community/zadeh#103
pulsar-edit/pulsar#580

At the moment this one is out of my reach, the zadeh module is actually a dependency of atom-languageclient which is sorely in need of an update or replacement... Do you have this same issue with other LSP-related Pulsar packages as well?

This seems to be the only one affected atm but pulsar isnt my primary IDE, I use it for viewing source code, as such there may well be related packages that are affected im not aware of

I was able to get this fixed on new apple silicon machine by navigating to ~/.pulsar/packages/pulsar-ide-python/node_modules/zadeh and running node-gyp rebuild. I'll update the readme to make note of this.

@mjrodgers, @savetheclocktower/atom-languageclient version 1.17.9 has removed the dependency on zadeh. This is still something that Pulsar should figure out how to do automatically, but in the short term this should remove a headache for Apple Silicon users.
New installations of pulsar-ide-python should get the new version automatically, but you might want to do an explicit version bump. Up to you. Let me know if it doesn't have the intended effect.

Not that it matters much for this package specifically, but we identified the root cause (which was pretty dumb!) and the next version of Pulsar should fix this altogether.
In this case, had zadeh still been a dependency of atom-languageclient, it would've resulted in a slightly longer installation process (since zadeh has no arm64 prebuild) and would've required build tools to be set up. But zadeh would've had the right architecture the first time around.
It also means that, if somehow you wind up with the wrong architecture on a native module (like when migrating from Intel Mac to Silicon Mac), both ppm rebuild and the in-Pulsar GUI for rebuilding packages will now rebuild it properly.


tvOS support

Added a TARGET_OS_IPHONE check to correctly define macros.

This should be merged in Godot itself then it'll eventually be synced here. Thanks!


Promote dd.core.Scalar to dd.Series without forcing computation

I have some user defined functions that return a dd.core.Scalar. However, I'd like to promote the result to a dd.Series, similar to how you can wrap a scalar in a regular pandas.Series. At the moment, I don't see any way to do this besides explicitly calling .compute() to materialize the scalar, put this into a pandas.series and then calling dd.from_pandas.
I don't believe this already exists, but let me know if I've missed something.
A contrived example that returns a dd.core.Scalar:
df = dd.from_pandas(pd.Series([10.0]), npartitions=1)
dd.map_partitions(sum, df)

I think you are on the way to answering your own question :) You can write a function that takes in the scalar and constructs a pandas.Series and then use map_partitions to call that function so that you don't have to materialize the scalar in the client.

@jsignell - maybe I'm missing something, but that seems to lead to a type error:
(Pdb++) result
dd.Scalar<series-..., dtype=float64>
(Pdb++) result.compute()
45.45
(Pdb++) dd.map_partitions(lambda x: pd.Series([x]), result, meta=pd.Series([], dtype="float64"))
*** TypeError: Expected meta to specify scalar, got pandas.core.series.Series
Traceback (most recent call last):
  File "/home/g/miniconda3/envs/ibis/lib/python3.8/site-packages/dask/dataframe/core.py", line 5327, in map_partitions
    return Scalar(graph, name, meta)
  File "/home/g/miniconda3/envs/ibis/lib/python3.8/site-packages/dask/dataframe/core.py", line 120, in __init__
    raise TypeError(
(Pdb++)

Specifically it looks like https://github.com/dask/dask/blob/main/dask/dataframe/core.py#L5568 special cases all arguments being Scalars and forces a Scalar to be constructed.
If I do something like
dd.map_partitions(lambda x, _: pd.Series([x]), result, 0,  meta=pd.Series([], dtype="float64"))

dfs here https://github.com/dask/dask/blob/main/dask/dataframe/core.py#L5555 is empty causing an IndexError here https://github.com/dask/dask/blob/main/dask/dataframe/core.py#L5623.
Which led me to this solution, which did work:
empty = dd.from_pandas(pd.Series(), npartitions=1)
dd.map_partitions(lambda x, _: pd.Series([x]), result, empty,  meta=pd.Series([], dtype="float64"))

Which correctly gives you a pd.Series with one element:
0    45.45
dtype: float64

Nice! I think both the map_partitions and the from_delayed solution look pretty good.

I'm going to close this since it seems like you have a solution that works. But if you would like to propose a change to the docs or to the codebase please open a pull request!


Problem deserializing dictionary with object keys

I'm trying to send an object of type Dictionary<Node, decimal> from my controller to a page, where Node is a custom class I've written. When I first attempted this, I got the following error:
WASM: [System.ArgumentException] The value "App.Shared.Graph.Node" is not of type "App.Shared.Graph.Node" and cannot be used in this generic collection.
I learned that there is a more general problem of deserializing dictionaries with complex keys, and sure enough I found that if I attempted to serialize and deserialize one of my dictionaries in a unit test using Json.NET, it failed. With this in mind, I implemented the TypeConverter solution suggested here. Now I can successfully serialize and deserialize my dictionaries in unit tests, but this still fails in my Blazor app. I now get a different error:
WASM: [System.ArgumentException] The value "{"Username":"123","Name":null,"Degree":0}" is not of type "App.Shared.Graph.Node" and cannot be used in this generic collection.
(The value cited above corresponds to one of my Node objects.)

Hi. Thanks for contacting us.
We're closing this issue as there was not much community interest in this ask for quite a while now.


Add a Spotify Clone Built with HTML and CSS to Project Repository

Description
This project will introduce a fully responsive Spotify clone that mimics the interface of the popular music streaming service. The layout will consist of a navigation bar, side menu, playlist view, music player controls, and other UI elements, all developed using pure HTML and CSS. By building this project, contributors can enhance their understanding of web design principles, including Flexbox, CSS Grid, and responsive design techniques
Screenshots
No response
Checklist

[X] I have checked the existing issues
[X] I have read the Contributing Guidelines
[X] I'm a GSSoC'24-Extd contributor
[ ] I'm a Hacktoberfest'24 contributor
[X] I am willing to work on this issue (optional)

I would like to take responsibility for implementing the Spotify clone project. I will handle the development of a fully responsive interface using pure HTML and CSS, including the navigation bar, side menu, playlist view, and music player controls. I'll ensure the layout is optimized with Flexbox, CSS Grid, and responsive design techniques.