OpenMP version of SO quantities

As mentioned in https://github.com/ICRAR/VELOCIraptor-STF/pull/57#issuecomment-776268884 there are a number of datasets that are widely different between runs of VR (standalone, but probably also with SWIFT) that are OpenMP-enabled and OpenMP-disabled.
A full list of the datasets that are different can be derived by comparing the two diffeernt output files mentioned in the comment linked above. I did the following:
vr_compare_datasets() {
        file1="$1"
        file2="$2"
        dataset="$3"
        lines=15
        diff -Naur <(h5dump -d $dataset "$file1" | head --lines $lines) <(h5dump -d $dataset "$file2" | head --lines $lines)
}

for dataset in `h5dump -n /cosma7/data/dp004/jlvc76/BAHAMAS/Roi_run/halos_omp_0036.properties.0 | grep SO_ | awk '{print $2}'`; do
    vr_compare_datasets /cosma7/data/dp004/jlvc76/BAHAMAS/Roi_run/halos_{omp_,}0036.properties.0 $dataset
done > so_quantities.diff

The resulting file shows the differences for all SO_* datasets between the two files. The following is a summary of the situation:
Equal

/SO_Mass_highT_0.100000_times_500.000000_rhocrit
/SO_Mass_highT_0.250000_times_500.000000_rhocrit
/SO_Mass_highT_0.500000_times_500.000000_rhocrit
/SO_Mass_highT_0.750000_times_500.000000_rhocrit
/SO_Mass_highT_1.000000_times_500.000000_rhocrit

Almost equal
Only a few values are slightly different, the rest are the same

/SO_Mass_1000_rhocrit
/SO_Mass_100_rhocrit
/SO_Mass_200_rhocrit
/SO_Mass_2500_rhocrit
/SO_Mass_500_rhocrit
/SO_R_1000_rhocrit
/SO_R_100_rhocrit
/SO_R_200_rhocrit
/SO_R_2500_rhocrit
/SO_R_500_rhocrit

Minor differences
Most values are different, but only after 2 or 3 decimal places.

/SO_Lx_1000_rhocrit
/SO_Lx_100_rhocrit
/SO_Lx_200_rhocrit
/SO_Lx_2500_rhocrit
/SO_Lx_500_rhocrit
/SO_Lx_gas_1000_rhocrit
/SO_Lx_gas_100_rhocrit
/SO_Lx_gas_200_rhocrit
/SO_Lx_gas_2500_rhocrit
/SO_Lx_gas_500_rhocrit
/SO_Lx_star_1000_rhocrit
/SO_Lx_star_100_rhocrit
/SO_Lx_star_200_rhocrit
/SO_Lx_star_2500_rhocrit
/SO_Lx_star_500_rhocrit

Also all equivalent Ly and Lz datasets.
Huge differences
Most values are different, even already at the most significant decimal place. Some values are the same though.

/SO_Mass_gas_1000_rhocrit
/SO_Mass_gas_100_rhocrit
/SO_Mass_gas_200_rhocrit
/SO_Mass_gas_2500_rhocrit
/SO_Mass_gas_500_rhocrit
/SO_Mass_gas_highT_0.100000_times_500.000000_rhocrit
/SO_Mass_gas_highT_0.250000_times_500.000000_rhocrit
/SO_Mass_gas_highT_0.500000_times_500.000000_rhocrit
/SO_Mass_gas_highT_0.750000_times_500.000000_rhocrit
/SO_Mass_gas_highT_1.000000_times_500.000000_rhocrit
/SO_Mass_star_1000_rhocrit
/SO_Mass_star_100_rhocrit
/SO_Mass_star_200_rhocrit
/SO_Mass_star_2500_rhocrit
/SO_Mass_star_500_rhocrit
/SO_T_gas_highT_0.100000_times_500.000000_rhocrit
/SO_T_gas_highT_0.500000_times_500.000000_rhocrit
/SO_T_gas_highT_0.750000_times_500.000000_rhocrit
/SO_T_gas_highT_1.000000_times_500.000000_rhocrit
/SO_Zmet_gas_highT_0.100000_times_500.000000_rhocrit
/SO_Zmet_gas_highT_0.250000_times_500.000000_rhocrit
/SO_Zmet_gas_highT_0.500000_times_500.000000_rhocrit
/SO_Zmet_gas_highT_0.750000_times_500.000000_rhocrit
/SO_Zmet_gas_highT_1.000000_times_500.000000_rhocrit

As a workaround, one obviously can compile the code without OpenMP support.

Just to add to the first line in the description: the problem is indeed the same when running inlined.

This was a bit hard to find, but the problem was a race condition on a shared variable used by different OpenMP threads concurrently. Once the issue was found the fix was simple: just declare the variable within each thread.
After applying the fix I ran VR with 4 and 1 thread and compared the outputs using the utility shown in the issue description. No differences were found this time for any of the SO quantities, and therefore the patch seems to work correctly.
I've opened #69 just to double-check I didn't break any of the builds. @MatthieuSchaller I feel confident enough that I will merge this immediately to the master branch after the PR is green, but if you could double-check this on your end later on it would be great.

Code merged to master.


Bootstrap refactor typography

Overview
This is a bit of a massive PR which refactors all of the typography on the site to use bootstrap's typography, allowing you to more easily configure fonts/font colors.  For example, take a look at the new _variables.scss:
//
// Colors
//

// General
$primary: #5d78ff;
$secondary: #282f49;
// Text
$headings-color: #282f49;
$body-color: #7e7e8a;

//
// Typography
//

// Fonts
@import url("https://fonts.googleapis.com/css?family=Poppins:400,500,600,700,800,900|Yeseva+One&display=swap");
$font-family-base: "Poppins", sans-serif;
$headings-font-family: "Yeseva One", cursive;

// Size
$font-size-base: 1.125rem; // 18px
$h1-font-size: 60px;
$h2-font-size: 50px;
$h3-font-size: 30px;
$h4-font-size: 25px;
$h5-font-size: 22px;
$h6-font-size: 16px;

// Spacing
$headings-margin-bottom: 1.5rem;
$line-height-base: 1.75;

// Misc
$link-hover-decoration: none;

And since it's all using bootstrap, you can leverage any other bootstrap typography options too! 🥳
Breaking Changes
Once again, this does change the visuals a bit.  But I've tried my best to approximately match what was there before.  But, feel free try this one out to make sure you're happy with it.
Other fixes
Since I was lazy, I bunched a number of other changes into this:

Fixed a number of places the colors were hardcoded, the $primary color should change all instances now. (besides those inside of the .svg files)
Fixed bug where on mobile there would be a slight horizontal scroll due to the portfolio section
Refactored the sections .html files & .scss names to match.
Adding configuration options for the social buttons at the bottom, with the new [[params.social]] option in the config.toml
Fixed the refactored the contact page buttons (which I forgot to do on #6 )
Changed the headers of every section to be markdown, so you can have subtitles on whatever section you want!
Idk, prolly a few other things.

Btw, thanks for the awesome theme!  It's the prettiest hugo theme I've seen 😄

This is what I am looking for, when will this get merged?

@imjuanleonard I went ahead and merged it myself.
@kausarpial let me know if there are any changes you're unhappy with & I can create a new PR to fix them.


21235 Added unit tests + misc cleanup

Issue #: bcgov/entity#21235
Description of changes:

app version = 5.10.7
misc cleanup
removed continuation authorization snackbar
added test suites for new Cont In views and components

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of the bcrs-entities-create-ui license (Apache 2.0).

/gcbrun

Temporary Url for review: https://business-create-dev--pr-689-59a0htqn.web.app

This is holding up other PRs so I'm merging it.


requirements.txt very out of date

I discovered this as I tend to install things with pip via:
pip install -r requirements.txt
python setup.py install

Trying to use as above fails with a clean virtualenv (py3.6)

Thanks for pointing that out! I haven't kept it up to date because I use conda environments, and tend to install some things with conda and others with pip. Will update.

I've added a loose requirements.in and updated the pinned requirements.txt


Doesn't support Cordova 4+ for iOS

Since Cordova 4, initWithWebView has been removed.  The upgrade notes say that this should be replaced with pluginInitialize.
https://github.com/apache/cordova-ios/blob/master/guides/API changes in 4.0.md

Fixed by #88


Add ast_node_id field to all ast nodes

We should have a field similar to IdentifierReference's reference_id that would keep the AstNodeId of each AST node.
Can be written manually, using a declarative ast_node macro for definition or a procedural derive macro.
I guess we can also remove AstNode as it can be changed into SOA in the AstNodes structure.
If we remove the AstNode struct we can add a trait with the same name which would implement a function called ast_node_id that would give us the information for getting things that AstNode would've provided before. With this trait, we can use any ast node with the help of generics since with the ast_node_id alone we can infer the node's kind, parents, scope, control flow, and anything that gets added down the road.

cc @Boshen

It's a 👍 for adding a node id because rustc has them as well https://doc.rust-lang.org/beta/nightly-rustc/rustc_ast/node_id/struct.NodeId.html, so the following arguments are not theoretical but practical.
Since this requires a lot of effort, I think we need a few real world scenarios that can motivate this change, to decide whether we want to do this right now, or later when it's absolutely necessary.

Well, let me try my best to explain a real-world situation in which this change can help make things easier.
Let's say we want to transform a given node based on its parent, Right now this is achieved by monitoring all nodes and keeping a stack of them. I'm going to take the ArrowFunctions transformer as an example but after studying the babel transformers I find it a common thing.
impl<'a> VisitMut<'a> for ArrowFunctions<'a> {
    fn enter_node(&mut self, kind: AstType) {
        self.nodes.push(kind);
    }

    fn leave_node(&mut self, _kind: AstType) {
        self.nodes.pop();
    }

    fn visit_jsx_identifier(&mut self, ident: &mut JSXIdentifier<'a>) {
        let parent_kind = self.nodes.last().unwrap();
        let parent_parent_kind = self.nodes[self.nodes.len() - 2];
        // ...
        walk_jsx_identifier_mut(self, ident);
    }
}

Well if we go for this change it can be simplified into something more akin to this:
impl<'a> VisitMut<'a> for ArrowFunctions<'a> {
    fn visit_jsx_identifier(&mut self, ident: &mut JSXIdentifier<'a>) {
        let parent = self.ctx.semantics().nodes().parent(ident.ast_node_id());
        let parent_kind = parent.kind();
        let parent_parent_kind = self.ctx.semantics().nodes().parent_kind(parent.ast_node_id());
        // ...
        walk_jsx_identifier_mut(self, ident);
    }
}

Keep in mind that the example above is only using its parent's kind, If we want the actual parent node in VisitMut we have to do crazy things like having a reverse lookup table, searching through the nodes, or trying to achieve the same thing with only scope information. While having the ast_node_id would make it a simple array indexing.

Even in Visit which has the node reference passed through enter/leave_node, the need to keep a stack of parents while there is already such representation in semantics is counterproductive. It may also have minimal impact on performance and memory footprint while scaling but I don't find this part problematic. Not to mention the loss of extra information because of lack of access to the ast_node_id, basically if we want to add any complex analysis in which its result is needed further down the road would make for a good mind-boggler.
I guess it makes sense that Rust does it; since it needs complex analysis. Roc and Elm get away with this because of their language design.
If you are worried about having extra fields in the AST, We may be able to make it optional via features if we make the AstNodeId non-clonable I guess it would result in the cell needing a mutable reference to get the node_id without swapping it and it would limit its scope to the VisitMut trait which would result in it not being necessary for basic semantic analysis and tree traversal. I'm not really into having this field as a feature but it shouldn't be a problem implementing either.

In some cases we can intercept the parent using a visit on a higher node, for example instead of detecting a function parameter and then getting its parent function node, We can detect functions and search for a viable function parameter. I strongly believe that these cases should be written/ported from Babel in a manner that keeps the data flow local, We should go for using semantics information if it is absolutely necessary however it doesn't mean that we won't need it to implement some of these cases.

Well if we go for this change it can be simplified into something more akin to this:
impl<'a> VisitMut<'a> for ArrowFunctions<'a> {
    fn visit_jsx_identifier(&mut self, ident: &mut JSXIdentifier<'a>) {
        let parent = self.ctx.semantics().nodes().parent(ident.ast_node_id());
        let parent_kind = parent.kind();
        let parent_parent_kind = self.ctx.semantics().nodes().parent_kind(parent.ast_node_id());
        // ...
        walk_jsx_identifier_mut(self, ident);
    }
}

Just want to point out an interesting approach, If we implement the ast_node_id method via the AstNode trait we can have methods and functions like parent take advantage of generics which makes a nicer interface.
impl<'a> VisitMut<'a> for ArrowFunctions<'a> {
    fn visit_jsx_identifier(&mut self, ident: &mut JSXIdentifier<'a>) {
        let parent = self.ctx.semantics().nodes().parent(ident);
        let parent_kind = parent.kind();
        let parent_parent_kind = self.ctx.semantics().nodes().parent_kind(parent);
        // ...
        walk_jsx_identifier_mut(self, ident);
    }
}

We can detect functions and search for a viable function parameter.

Just to make it clear, This approach is necessary if we want to replace the node instead of mutating it in place. So I believe that it makes sense to default to this when appropriate.

How do we deal with enum types? The current approach has enum types in the parent pointing tree, it's going to be a impractical to migrate it (I think).

@Boshen
/// Array Expression Element
#[derive(Debug, Hash)]
#[cfg_attr(feature = "serialize", derive(Serialize))]
#[cfg_attr(feature = "serialize", serde(untagged))]
pub enum ArrayExpressionElement<'a> {
    SpreadElement(Box<'a, SpreadElement<'a>>),
    Expression(Expression<'a>),
    /// Array hole for sparse arrays
    /// <https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Trailing_commas#arrays>
    // Serialize as `null`. `serialize_elision` in serialize.rs.
    #[cfg_attr(
        feature = "serialize",
        serde(serialize_with = "ArrayExpressionElement::serialize_elision")
    )]
    Elision(Span),
}

The Elision variant here is the only example that I could find that needs refactoring, Since Span can't be an AstNode we should add an ElisionElement similar to SpreadElement and RestElement.

The Elision variant here is the only example I found which needs refactoring;

Feel free to create another issue for this change.

You may have missed the thread on discord https://discord.com/channels/1079625926024900739/1222938985224081528
I'll create an umbrella issue for progress report and a milestone to officially kick off new transformer implementation.

Feel free to create another issue for this change.

I think it is a part of this issue and just something we have to do in order to get this working. It won't have any concerning effect on the other parts, We almost always ignore elision elements. It is just there to fill a space in the array.

You may have missed the thread on discord https://discord.com/channels/1079625926024900739/1222938985224081528

Yes, I saw this after commenting here, I don't have a habit of checking my discord servers(I still have notifications for directs).

I guess It's decided then, I'll start by creating a PR for this change. As soon as it gets to a working state I'll mention you guys for feedback.

FYI I created the AST builder back in the day envisioning that we are going to add node ids ... I think this is the day. Good luck!

@overlookmotel @Boshen I still think there is a use for this ID, If we have the scope ID along with our nodes we can traverse through things like scopes with no issue(both in linters and transformers). It makes rules like #2637 simpler(since we can rely on scope data without having to do a lot of iterations).
Let me know what you think, Since we are doing a lot of changes on AST maybe it is a good time to also sneak this in.

I do not have a clear idea at present of best way to implement scope binding lookups in transformers. You may be right that an AST node ID is the best way. On the other hand, we may be able to find a more efficient way using the kind of "pointer tricks" that Traverse is using.
So... er... don't know!
But I've made a comment on #2861 to not delete the branch in case we want to come back to this. Could you also please make sure you keep a local copy of the branch too, just in case?

I'll fork the branch; Graphite might cause me to delete the local branch by accident.


Add bexPair static method to allow easy creation of BEXPair

Think put in BEXUtilities like entry method

Added to BEXPairs utility class.

Closed as part of 0.10 release


Add currency to subscriptions

In order to reliably compute product prices, a subscription needs to store the desired currency. This should not only allow us to more reliably compute product prices when processing a subscription, but also give us the ability to predict the future value of a subscription's order.

Closed by #198


Is there a difference in the assessment of core/non-core FEs?

Hi @Zce1112zslx ,
I would like to know why the fn/fp calculating strategy for core and non-core Frame Element are different (in the evaluation.py), see:
(line66-71)
                if fe_coretype[int(gold_fe_type[batch_index][fe_index])] == 1:
                    self.fe_TP_FN+=1
                    self.core_cnt+=1
                else:
                    self.fe_TP_FN+=0.5
                    self.nocore_cnt+=1

I'd like to know if there is a standard evaluation script for such calculations, or whether there are some existing works that counting the score of  non-core FEs as 0.5. Thank you very much!

I found the answer on: https://github.com/Noahs-ARK/semafor/blob/master/scripts/scoring/fnSemScore_modified.pl

I found the answer on: https://github.com/Noahs-ARK/semafor/blob/master/scripts/scoring/fnSemScore_modified.pl
thank you.

Yes our evaluation code is a re-implementation python version of SEMAFOR. You can also use the perl version if you are familar with it.


Only returns the last line of the file

The following code:
var linereader = require('line-reader');

linereader.eachLine('test_data', function(line, last) {
	console.log(line);
});

with test_data:
aa
bb
cc
dd

only returns dd in the console.

This may have been a line separator issue.  I just contributed a PR that supports line endings from any platform, let me know if that works for the data straight out of Excel.

Tested in current version.  Seems to have been fixed at some point.


fix:  remove nfs on ci

Remove  useless nfs on ci pod
Add todo for removing nfs dependency next time.

Hello, I am a serverless review bot on flows.network. Here are my reviews of code commits in this PR.

This GitHub pull request includes three individual patches. The first two have no potential problems or errors. However, the third patch removes the NFS volume from the CI pipeline. This could lead to issues if data was previously being shared between different parts of the pipeline using NFS. It is unclear what alternatives are being used instead of NFS and whether they will be effective in replacing the removed volume.
Details
Commit 1
The patch changes the skip_report value from true to false for several jobs in the prow-postsubmits.yaml file in the pingcap/tidb/latest directory. This change enables mergeci reports on these jobs that were previously being skipped.
There are no potential problems of concern with this code change.
Commit 2
The key change in this patch is modifying the context parameter from wip-integration-jdbc-test to ci/integration-jdbc-test. The change is made in the jobs/pingcap/tidb/latest/prow-postsubmits.yaml file.
There are no potential problems identified in this patch.
Commit 3
The key change in this pull request is the removal of the NFS volume on CI. There were several instances of nfsVolume being removed and replaced with emptyDirVolume or no volume at all. This will affect where data is stored during the CI process.
There may be potential problems with removing the NFS volume. The reason for using NFS may have been to share data between different parts of the CI pipeline. If this is the case, removing the NFS volume may lead to data being lost or not being shared properly. It is also unclear what the alternatives to NFS are and whether they will work effectively in place of the removed volume.

/test all

/test all


Screen show error when i run the OPENFAST

Hi everyone, I'm very new user of OpenFAST and a first year doctoral student.
When i run the openfast, the screen show en error,like this

it means: Unable to continue executing code because mkl_sequential.2.dll could not be found, a reinstallation may resolve the problem.
In the case folder,i copy three program in it, Command Prompt.exe  +  MAP_x64.dll  + openfast_x64.exe, like this

My computer is win11, and i use the OPENFAST 3.0.0.
I don't know what is mkl_sequential.2.dll. I try to find this program in my computer but failed. So I can't solve the problem.
I hope there are people who have encountered this problem can help answer it. Thank you very much!

Dear @bjonkman
Sorry for the late reply. I attended the course of professional English writing this morning, which was very interesting but a little difficult for me~~
I have already compile OpenFAST with VS2019 + oneApi2022.
Do these version match the OPENFAST3.0?

1, I also compile the DISCON DLL. I change the Scheme configuration to Release and x64.

And then E:\OpenFAST3.0\openfast-3.0.0\openfast-3.0.0\reg_tests\r-test\glue-codes\openfast\5MW_Baseline\ServoData  generat these programs.

2, Next i compile the FAST, i change the configuration both for the "FAST" and "FASTlib"

Then the E:\OpenFAST3.0\openfast-3.0.0\openfast-3.0.0\build\bin generate these programs.

3, Finally i copy these two program and CMD.exe to the case folder

Am I doing everything right? Is there a problem with the installed software version?

Dear @bjonkman
I download OpenFAST3.1 from a Bilibili (like youtube) video tutorial blogger today. Then I copy "openFast_x64.exe" from his folder into my folder and did the calculation. And then it work successfully. As you said, I made a mistake in the compilation process of FAST. So is there something wrong with the process I'm operating above? Or maybe there's something wrong with my software version?
Tomorrow is the weekend, so have a nice weekend in advance.
(By the way, today is May 20, and 520 means "I love you" in Chinese homonym~.)

@L-Ethan, When you changed the Runtime Libraries to Debug Multithread DLL, you told the compiler to link with dynamic libraries (instead of static ones). This means when you run OpenFAST_x64.exe, it will need to have access to the compiler's runtime DLLs. You can still use this executable, but you'd have to make sure the command prompt you are using knows where the DLLs are located. This is where you would want to run from the Intel environment: Start -> Intel <Compiler Version> -> Compiler <version> environment.
You should not need to change those Runtime libraries when you build OpenFAST in Release mode. For Release mode, I would recommend using the Multithreaded option:

Also, if you aren't changing any code, you can download pre-compiled binaries from the OpenFAST Releases page: https://github.com/OpenFAST/openfast/releases. The Assets section of each tagged release contains binaries that you can use.

Dear @bjonkman
I have been able to run it.
Thanks all.
Best regard.


terraform_docs is broken in 1.7.4

Clone this repo: https://github.com/djgoku/pre-commit-terraform-docs-failure
see README.md in master for output for both 1.7.3 vs 1.7.4 version.

Thanks for opening this issue, I need to know more details to be able to help - OS, version of terraform-docs, version of bash, terraform templates you use (maybe there is some edge case).

OS: macOS 10.4.2
terraform-docs: 0.3.0 and 0.5.0
bash: GNU bash, version 3.2.57(1)-release (x86_64-apple-darwin18)
terraform: v0.11.10
python: 3.6.6

If you clone the repo it has two branches that you can use as test cases.

This is working now in v1.8.1. Closing this issue.

This is good, but also strange because there were no changes related to terraform_docs hook if we look into diff here - https://github.com/antonbabenko/pre-commit-terraform/compare/v1.7.4...v1.8.1


Appear on bottom instead of top

Hi,
This is a nice library. Thanks.
Can you add position featured, like appear on bottom or center instead of only top?
Thanks.

Yes, next version will support it I think.

Added in new version 1.1.0, please, check this.

Hi,
Nice!
I can appear on center too after?
Thanks.

on center now not available, you need it?

Hi,
It is not urgent. Only when you have free time.
Thanks.

Added center to 1.1.2 version.


add theme_ttpd.R

theme inspired by Taylor Swift's album "The Tortured Poets Department" colors generated from the album cover with https://coolors.co/image-picker
Would you be able to double check if the font works with the helper functions in utils? I couldn't get it to work locally and I think it's because I'm missing a helper function.

Looks like it works for me:


workflow settings should be cleaner

currently the workflow settings repeat the same operations many times.  in addition, there are some settings like basedir that one might want to set in a settings file.  come up with a cleaner way to integrate stored settings with args settings

Ashley and I were thinking about essentially deleting workflow_dict and instead just passing the full args dict to each script, which can then take whatever items it needs. for example args already has .preproc_settings['script'] (where script == 'fictrac_qc for example), so that script can directly pull the args it needs from there. Then instead workflow_dict would become just a list of jobs to run in order via run_preprocessing_step.
We do see that for some steps 'basedir' (in the workflow_dict) is set to args.basedir, while others set it to args.dir, and we also see that 'dir' (in the workflow_dict) is sometimes set to args.dir or args.process. This is related to issue #15, but looking forward not having the workflow_dict should not be a problem in sorting out directories, right?
What do you think?

Interesting! Could this handle the cases where the same process is run
twice with different settings or inputs, ala pca or regression?
I think the dir naming issues should be handled when we change to a
consistent api for all workflow elements as we discussed today
--
Russell A. Poldrack
Albert Ray Lang Professor of Psychology
Associate Director, Stanford Data Science
Director, SDS Center for Open and Reproducible Science
Building 420
Stanford University
Stanford, CA 94305
@.*** @.***>
http://www.poldracklab.org/

I think so! Using PCA as an example, the settings.json would list the PCA dict twice, but each dict would have different values to run the two different PCA styles. For example the first dict could be
    "PCA": {         "script": "dimensionality_reduction.py",         "time_hours": 8,         "label": 'resid'}, the second dict could replace the label and whatever other key/values should be different.

but wouldn't that require the same key to show up multiple times in the
dict (which isn't possible)?
On Mon, Jun 13, 2022 at 3:47 PM Luke Brezovec @.***>
wrote:

I think so! Using PCA as an example, the settings.json would list the PCA
dict twice, but each dict would have different values to run the two
different PCA styles. For example the first dict could be
"PCA": { "script": "dimensionality_reduction.py", "time_hours": 8,
"label": 'resid'}, the second dict could replace the label and whatever
other key/values should be different.
—
Reply to this email directly, view it on GitHub
https://github.com/ClandininLab/brainsss2/issues/30#issuecomment-1154523616,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAGUVEGF73MONDPG7KCIBMLVO6273ANCNFSM5YOTQFHA
.
You are receiving this because you authored the thread.Message ID:
@.***>

--
Russell A. Poldrack
Albert Ray Lang Professor of Psychology
Associate Director, Stanford Data Science
Director, SDS Center for Open and Reproducible Science
Building 420
Stanford University
Stanford, CA 94305
@.*** @.***>
http://www.poldracklab.org/


bug: Courses dashboard gets partially covered

Describe the bug
On opening the side navBar  the courses Dashboard get covered.
To Reproduce
Steps to reproduce the behavior:

Click on the show Nav button in the left div at the top.
It covers the courses dashboard.

Expected behavior
The complete courses dashboard should be visible even if the nav is open.
Screenshots or GIFs

@keshav-exe
On the Home page of the website, when we Click on the Menu Button which is present on the top left corner of the page, it opens up the Menu bar. This Menu bar is overlapping  the contents like the "Greeting" and the Courses present, which is impacting the user experience on the site. Here is an image for reference,

Perfect, will fix this in the next pr. Thanks


Refactor tests for better coverage

Resolves #464.
This PR proposes to include BaseSuite modules to test the base functionality of preset contracts. This PR includes base tests for ERC20, ERC721, and Ownable. Here's the general idea:

BaseSuites

names are not prefixed with test_
include the class with all of the base tests
the class name should not be prefixed with Test; otherwise, these tests run twice

test modules

define the base fixture (contract_factory) and any other fixtures not used in the base suite i.e. erc721_minted
define the test class and inherit the base suite i.e. class TestERC20(OwnableBase)
add tests specific to the preset flavor within the test class

fixtures

are not defined in the base suite but are passed, unpacked, and used
are defined in the tests where they are used

for modularity, the basic contract factory fixture is always called contract_factory

@fracek would you mind taking a look and give us your opinion as a pythonist?

I really like how you use inheritance for testing common functionality. I think it's a really good pattern for this and makes everything quite clear.

I really like how you use inheritance for testing common functionality. I think it's a really good pattern for this and makes everything quite clear.

That's excellent to hear :) thanks for taking a look!


react 0.15-rc2

Tried example:
<Cond value={true}>
  {[ isTrue,
true
]}
</Cond>

Works but with warning in console:
Warning: Each child in an array or iterator should have a unique "key" prop. Check the render method of `TemplateEditorAce`. See https://fb.me/react-warning-keys for more information.

I am having the same issue with this


add serde_ignored to warn on ignored fields

Adds serde_ignored to log ignored fields using tracing::warn
resolves #135

bors r+


fix taint command

Issue link

#566
What changes have been made

Verification steps

Checks

[X] I've made sure the tests are passing.
Testing Strategy

[ ] Unit tests
[ ] Manual tests
[ ] Testing is not required for this change

/approve


Granule search return HTTP Status - 500

I have opened an issue in podaac forum for the same. Here is the link.

Thanks
On Aug 29, 2016 9:14 AM, "Omkar"<EMAIL_ADDRESS>wrote:

I have opened an issue in podaac forum for the same. Here is the link
https://podaac.jpl.nasa.gov/forum/viewtopic.php?f=6&t=406.

—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/lewismc/podaacpy/issues/68, or mute the thread
https://github.com/notifications/unsubscribe-auth/ABHJlw7KOnH1f4WFjUwx02O7Eekx79lTks5qkwVngaJpZM4Jvoud
.


Documentation | fingerprint field is missing in Transaction Info inputs -> asset_list fields

Documentation:

Actual:

Closed by #79


fix rust-analyzer non_camel_case_types warning

Description
rust-analyzer currently complains with rust-analyzer(non_camel_case_types) warnings on all structs annotated with #[derive(Properites)]. This appears to have regressed from #2007. This PR resolves the warnings by annotating the generated struct with #[allow(non_camel_case_types)].
Checklist

[x] I have reviewed my own code
[ ] I have added tests (does not seem applicable)

i'm not sure why but the issue has returned, doing some more research

This looks correct now with cargo exand showing the macro-generated elements appropraitely annotated. I'm going to watch it locally for a short while to make sure the issue doesn't recur.


Gradle wrapper task executes successfully, but does not update gradle-wrapper.jar

I have a Gradle 7.6 project.
gradlew-update-example.zip
When I run
./gradlew wrapper --gradle-version 8.0-rc-1

Expected Behavior
I expect that Gradle updates the wrapper gradle/wrapper/gradle-wrapper.jar to version 8.0 RC1.
Current Behavior
However, the only change I observe is in gradle/wrapper/gradle-wrapper.properties

before:distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-7.6-bin.zip
networkTimeout=10000
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists

after:distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-8.0-rc-1-bin.zip
networkTimeout=10000
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists

Steps to Reproduce
➜  gradlew-update-example git:(main) ./gradlew wrapper --gradle-version 8.0-rc-1
Starting a Gradle Daemon, 1 incompatible Daemon could not be reused, use --status for details
Configuration cache is an incubating feature.
Calculating task graph as no configuration cache is available for tasks: wrapper --gradle-version 8.0-rc-1
Type-safe project accessors is an incubating feature.

0 problems were found storing the configuration cache.

See the complete report at file:///.../gradlew-update-example/build/reports/configuration-cache/bwnu31qrxew9zb5lnkk7c5ynw/2hxwuscedtj5wbmkg7wa8b8x4/configuration-cache-report.html

BUILD SUCCESSFUL in 26s
7 actionable tasks: 2 executed, 5 up-to-date
Configuration cache entry stored.

When I check git status, I can see there is no change to gradle-wrapper.jar
➜  gradlew-update-example git:(main) ✗ git status
On branch main
Changes not staged for commit:
  (use "git add <file>..." to update what will be committed)
  (use "git restore <file>..." to discard changes in working directory)
	modified:   gradle/wrapper/gradle-wrapper.properties

no changes added to commit (use "git add" and/or "git commit -a")

When I run ./gradlew assemble, there is still no change to gradle-wrapper.jar
➜  gradlew-update-example git:(main) ✗ ./gradlew assemble
Configuration cache is an incubating feature.
Calculating task graph as no configuration cache is available for tasks: assemble
Type-safe project accessors is an incubating feature.

> Task :buildSrc:jar
:jar: No valid plugin descriptors were found in META-INF/gradle-plugins

0 problems were found storing the configuration cache.

See the complete report at file:///.../gradlew-update-example/build/reports/configuration-cache/ey85tqvz98675trimokbo6gyi/5k72mkt8es09evebv5ntxrews/configuration-cache-report.html

Deprecated Gradle features were used in this build, making it incompatible with Gradle 9.0.

You can use '--warning-mode all' to show the individual deprecation warnings and determine if they come from your own scripts or plugins.

See https://docs.gradle.org/8.0-rc-1/userguide/command_line_interface.html#sec:command_line_warnings

BUILD SUCCESSFUL in 14s
10 actionable tasks: 10 executed
Configuration cache entry stored.

➜  gradlew-update-example git:(main) ✗ git status
On branch main
Changes not staged for commit:
  (use "git add <file>..." to update what will be committed)
  (use "git restore <file>..." to discard changes in working directory)
	modified:   gradle/wrapper/gradle-wrapper.properties

no changes added to commit (use "git add" and/or "git commit -a")

Context
Build and Configuration caches are enabled
When I first encountered this problem I created this issue: https://github.com/gradle/gradle/issues/23453
Your Environment

Gradle 7.6

Thank you for your interest in Gradle!
This issue will be closed as a duplicate of

https://github.com/gradle/gradle/issues/884

Please add your 👍 to that issue.


Fix the websocket failover client test failure

Purpose
$Subject
Fixes #22992
Approach

Describe how you are implementing the solutions along with the design details.

Samples

Provide high-level details about the samples related to this feature.

Remarks

List any other known issues, related PRs, TODO items, or any other notes related to the PR.

Check List

[x] Read the Contributing Guide
[ ] Updated Change Log
[ ] Checked Tooling Support (#)
[ ] Added necessary tests

[ ] Unit Tests
[ ] Spec Conformance Tests
[ ] Integration Tests
[ ] Ballerina By Example Tests

[ ] Increased Test Coverage
[ ] Added necessary documentation

[ ] API documentation
[ ] Module documentation in Module.md files
[ ] Ballerina By Examples

Codecov Report

Merging #23205 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master   #23205   +/-   ##
=======================================
  Coverage   14.59%   14.59%
=======================================
  Files          51       51
  Lines        1411     1411
  Branches      219      219
=======================================
  Hits          206      206
  Misses       1189     1189
  Partials       16       16

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update cb560ee...bf6123f. Read the comment docs.


Disabled Input - Buttons

What

Styling and guidance for disabled buttons. This is in response to #118

Why

Buttons can be disabled when the option is not available, until a further action is completed. For example, not all the form field are completed.

Anything else

Guidance should be included as to when this is and is not appropriate to use

From Gov UK Guidance:

Disabled buttons have poor contrast and can confuse some users, so avoid them if possible.
Only use disabled buttons if research shows it makes the user interface easier to understand.

Accessibility
aria-disabled (state)
Indicates that the element is perceivable but disabled, so it is not editable or otherwise operable.
For example, irrelevant options in a radio group may be disabled. In addition to setting the aria-disabled attribute, authors SHOULD change the appearance (grayed out, etc.) to indicate that the item has been disabled.

Accessibility
HTML attribute "disabled"
<button type="button" disabled></button>

The disabled attribute is a boolean attribute. When present, it specifies that the element should be disabled. https://www.w3schools.com/tags/att_disabled.asp

Guidance
From Australia DS:

A button that can’t be clicked and doesn’t react to hover. A disabled button is typically greyed out to indicate to users that they cannot undertake the action associated with it. This is usually for page logic reasons.
https://designsystem.gov.au/components/buttons/#disabled

Visual Design
For USDS, the disabled state is gray, while Australia and UK use opacity to retain the underlying colour.

Accessibility
We should add a cursor property to indicate the action is disabled
cursor:not-allowed;
This would support WCAG 2.0 1.4.1 Use of Color: Color is not used as the only visual means of conveying information, indicating an action, prompting a response, or distinguishing a visual element.

Usability
As mentioned in the UK guidance, disabled buttons aren't the most user friendly as they block the user without really explaining why they can't move forward. Better practice might be to keep the button enabled and then provide error text. This clearly directs the user to where the error occurs whereas a disabled button keeps the user guessing as to what's missing.

Blocking the user is a bad practice. Some forms disable the submit button until all the validations are passed. The user tries to click the submit button and nothing happens. It is a bad practice to disable buttons. Disabling the button prevents our chance to tell the user what is wrong. The user keeps clicking the button and is totally in the dark why nothing happens. Keep the button enabled. Let the user click the button. Then show the message why it can’t proceed

http://form.guide/best-practices/form-validations-definitive-guide.html

Design
I would put forward the disabled styling with an opacity of 0.3. Anything 0.5 and higher still feels like a clickable element as light blue. Both 0.4 and 0.3 don't meet contrast minimums, but I think this is a trade off we'll have to make. Other DSes with disabled buttons also don't meet contrast minimums

As noted above, I think the guidance should push for informing users of errors rather than disabled buttons, unless it's proven that a disabled button works more effectively in testing


Duplicate values in records when calling create method multiple times

If some one coincidentally calls create() method with models that have some id, it would continuously add the id into records. I think it might be a potential problem when some model with a long id.
Example:
> foo = new Store('foo')
> B…e.L…e.w…w.Store {name: "foo", records: Array[0]}
> foo.records
> []
> foo.create({id: 1})
> Object {id: 1}
> foo.create({id: 1})
> Object {id: 1}
> foo.records
> ["1", "1"]

I added a line in create method to prevent from adding duplicate ids into records.
this.records.indexOf(model.id.toString()) < 0 && this.records.push(model.id.toString());

Good spot on this @hendiko. The localStorage adapter should map onto Collection's expected functionality of maintaining ID uniqueness.


install passwall plugin

hi
is it possible  to install Passwall on x-wrt frimware?

Hello there! Sorry for being late by 6 months... If your package depends on kernel modules that are not included in my config, you have to compile the firmware on your own with the proper config file.


TypeError: cannot pickle 'MinkowskiConvolutionFunction' object

Hi Jonas,
When I run main_instance_segmentation.py with s3dis dataset (by modifying the defaults in config_base_instance_segmentation.yaml), the code reaches the line runner.fit(model), and an error occurs:
TypeError: print_exception() got an unexpected keyword argument 'etype'
  File "/home/workspace/Mask3D/main_instance_segmentation.py", line 108, in main train(cfg)
  File "/home/workspace/Mask3D/main_instance_segmentation.py", line 84, in train runner.fit(model)
TypeError: cannot pickle 'MinkowskiConvolutionFunction' object
During handling of the above exception, another exception occurred:
  File "/home//workspace/Mask3D/main_instance_segmentation.py", line 114, in <module> main()
TypeError: print_exception() got an unexpected keyword argument 'etype'

The error seems to be related to MinkowskiEngine, but I cannot trace where the error occurs by debugging.
Could you please advise me on how to solve this problem?
Best,
Luis

I met the same problem and I found that when I changed the multi-GPU training to single GPU, the problem was solved, I hope this helps!

I have the same problem too.


English Documentation

I found it a very good library but the problem is I  do not find a great english documentation for the Library. The Quick Start  in english is good. But based on the fact that everything else is in Chinese I am having a problem  participating  in the Library.

What problems did you encounter, I can help you here🤝

Oooh  sorry I have found  that there is some english comments inside the code. Sorry for the false alarm. I will sponsor once I finish testing and use the library in production. @SilenceLove

@SilenceLove how can I make the user  pick a square image or pick an image and force the user to crop it as a square. This is particularly useful when you want the photo to be of a certain dimension in order to display them properly. For instance  a square image is good if it is used as a profile picture, a landscape image is useful to be used as a cover picture etc. How can I achieve to force user to pick a square image?

you can set like this
config.selectMode = .single
config.selectOptions = .photo
config.photoSelectionTapAction = .openEditor
config.editor.isFixedCropSizeState = true
config.editor.cropSize.aspectRatios = []
config.editor.cropSize.isResetToOriginal = false
config.editor.cropSize.isFixedRatio = true
/// set a fixed ratio
config.editor.cropSize.aspectRatio = .init(width: 1, height: 1)

Wow. You  did a wonderful job in this library.
One more last thing. Is it possible to request images and video compressed to a certain size parameters? Request a video of not  more than 480p or an  image compressed to not more than a certain width  and height? What is the behavior of the HXPhotoPicker if the media has not reached even the minimum size?

Cannot be compressed to the specified size, but you can set the quality of the compressed image or video through the compression: PhotoAsset.Compression parameter
let imageCompressionQuality: CGFloat?

VideoExportParameter
/// Video export resolution
public let preset: ExportPreset
/// video quality [1 - 10]
public let quality: Int

Do the  compressed video and  image cached? How long are they kept?

The default tmp directory, you can do the persistence yourself

Okay nice thank you, let me continue to explore the  Library.


Add trim support

This unit for periodical trim is installed with the base group, so it only has to be activated. You can read up on it here: https://wiki.archlinux.org/index.php/Solid_state_drive#Periodic_TRIM

I thought there also needs to be some special mount options added to fstab for trim to work?

Well, for trim support you can go one of 2 ways. You can periodically trim or trim continuously. This method uses trim once per week and it only does so on disks which support it.
Trimming continuously can cause performance issues and in some cases can cause the SSD to degrade faster. If you want to use continuously trim, you'll also need to make sure you know which drive supports it before mounting. In other words, this solution is a bit safer and easier.


ExAdmin assets won't server over https

I just updated to 4d4a5b374c05f641f5a1d20536bf5c95f68b41bd, and now I get insecure content warnings for the stylesheets and scripts.

Possible that https://github.com/smpallen99/ex_admin/pull/315 is the culprit?

Are you using a load balancer or reverse proxy to server content from phoenix?
If this occurred after an update then I would recommend revert back and check to see if the issue resolves.

@th31nitiate I host on Heroku, using the Phoenix static buildpack. Yes, this is definitely because I updated ExAdmin, so clearly it's a bug...

Ok, no probs. Can you help with instruction on how to reproduce the issue or can you grab a Chrome dev tools HAR recording so that we can review where the main fault might be occurring.
I can try it with a test account then we will be able to better pinpoint where the bug might be.
Have you managed to perform a roll back for the app so at least it usable in the mean time?

@th31nitiate Thanks for the support on this issue. You rock!!

@th31nitiate it's on a staging environment, so I haven't reverted. I've attached a HAR, you can see that the admin_lte2.css and jquery.min.js loaded over http, even though everything else is https. When I view the page source, I can see that those assets are specified with full urls, not just absolute paths. I believe this change was a result of https://github.com/smpallen99/ex_admin/pull/315.
smart-services-staging.herokuapp.com.har.zip

I figured this out, I was just missing a Phoenix.Endpoint configuration.
config :smart_services, SmartServices.Endpoint,
  url: [host: System.get_env("HOST"), scheme: "https", port: 443]


Config flow could not be loaded: 500 Internal Server Error Server got itself in trouble

What version of Music Assistant has the issue?
2023.2.1
The problem
When trying to add integration i have this error -   Config flow could not be loaded: 500 Internal Server Error Server got itself in trouble
How to reproduce
Settings - Add Integration
Relevant log output
No response
Additional information
No response
What version of Home Assistant Core are your running
2023.3.3
What type of installation are you running?
Home Assistant Supervised
On what type of hardware are you running?
Linux

Please see the pinned post https://github.com/music-assistant/hass-music-assistant/issues/1104

Why was this closed? The pinned posted does not offer a solution or am I missing something? :)

The pinned post makes clear that MA V1 is not supported in HA 2023.3.x It also directs you to the beta V2


Update read me

In this Pull Request I:

[ ] Create a new Rails app called 'hello-rails-react'.
[ ] Verified that the jsbundling-rails gem is added to your Gemfile.
[ ] Initialize your project with Git.
[ ] Install needed node dependencies.
[ ] Create a babel.config.js
[ ] Update webpack.config.js to include the babel
[ ]  Postgres database set up.
[ ] Created a table for storing your messages and created 5 different greetings.
[ ] Created an API endpoint that selects a random greeting from your table
[ ] Created the App component with react-router and render it in view.
[ ] Created the Greeting component that will display a greeting. Set it up as a route in your App component.
[ ] Created a store, an action, and a reducer that will connect to your API endpoint to get the random greeting.
[ ] Display the random greeting in your Greeting component. all the activities after I checked everything is passed again

Dear reviewer, I have done the project last time and it was approved. but today the pull request from dev to main was invalid. based on the feedback I have changed PR from the feature branch to the dev on the existing repository


Check why testing with benchmark is taking so long.

It seems that after #206, running the tests with benchmark feature is taking more than the double of it used to be.

We used to compile and run tests for trappist only. After #206 both trappist and stout are compiled and tested. We can probably try to reimplement feature flags to become able to compile trappist and stout separately. This will also allow to compare the compilation process for both and make sure that compilation artifacts are reused properly.

I reintroduced feature flags with #241. Currently not running tests for stout, since it doesn't have much. There also was a problem with not enough space to collect cache after running tests during test stage, was fixed in #241 too. Also the building time will improve after polkadot version upgrade, because hostperfcheck feature became option. (In 0.9.37 it cannot be disabled and it brings kusama runtime in scope).
The only issue that remains unsolved is the github cache size limit of 10gb per repository. Cache size of a single build is 6gb (tests) + 1.2gb (check) = 7.2gb.  If we have 2 branches using different cache keys (currently main and xcmv3-dev) they eliminate each others cache.


Do we need to copy our vocabularies into the public repository ?

Do we need to copy our vocabularies into the public repository ?

Sorted out offline - no, will create a reference to them in the GSQ portal.

Closing issue, this will be part of the internal documentation and will reference GSQ portal


Crash

Minecraft Version
1.19.2
Describe the Bug
One user of my modpack reported issue.

Reproduction Steps

Expected Result

Screenshots and Videos
No response
Crash Report or Log
https://bytebin.lucko.me/uyKpMbcnNX
Other Mods
M-Tech modpack 1.7.0 1.19.2
Mod Version
1.2.7d
Forge Version
3.2

Actually I don't know there is empty tome...I'll fix later.

Fixed


The "--without" option does not exist.

seems that the make build part got a little buggy, just tried to install the recent version.
NoSuchOptionException
The "--without" option does not exist.
at /usr/lib/python3/dist-packages/clikit/args/default_args_parser.py:300 in _add_long_option
296│     def _add_long_option(
297│         self, name, value, tokens, fmt, lenient
298│     ):  # type: (str, Optional[str], List[str], ArgsFormat, bool) -> None
299│         if not fmt.has_option(name):
→ 300│             raise NoSuchOptionException(name)
301│
302│         option = fmt.get_option(name)
303│
304│         if value is False:
make: *** [Makefile:20: build] Fehler 1
And when starting the backend
(base) stratte@stratte-MS-7D08:~/Schreibtisch/AI/OpenDevin4$ make start-backend
Starting backend...
RuntimeError
The Poetry configuration is invalid:
- Additional properties are not allowed ('group' was unexpected)
at /usr/lib/python3/dist-packages/poetry/core/factory.py:43 in create_poetry
39│             message = ""
40│             for error in check_result["errors"]:
41│                 message += "  - {}\n".format(error)
42│
→  43│             raise RuntimeError("The Poetry configuration is invalid:\n" + message)
44│
45│         # Load package
46│         name = local_config["name"]
47│         version = local_config["version"]
make: *** [Makefile:37: start-backend] Fehler 1

which machine are you using?

which machine are you using?
I am using Ubuntu 22.04.4 LTS

What's your poetry --version

poetry --version

shouldn't the makefile make sure to install the correct version? My Version is Poetry version 1.1.12

+1 It should, and I thought it did.
Try upgrading poetry please. latest is 1.8.2

poetry --version

thanks, it solved the issue, but i ran into another error now
An error has occurred: FatalError: git failed. Is it installed, and are you in a Git repository directory?
Check the log at /home/stratte/.cache/pre-commit/pre-commit.log
make: *** [Makefile:23: build] Fehler 1
my git version 2.34.1

I'm not sure about this one. What does git status return?
I'm guessing this comes from this line https://github.com/OpenDevin/OpenDevin/blob/main/Makefile#L23
perhaps comment/remove that one line temporarily to work around the issue.

git status

it prints that there is no git-repository in the filepath. i just donwnloaded the .zip file of opendevin. I will try removing that line thnx :)
(base) stratte@stratte-MS-7D08:~/Schreibtisch/AI/OpenDevin3$ git status
fatal: Kein Git-Repository (oder irgendeines der Elternverzeichnisse): .git

Yeah, there multiple things that assume you did a git clone, at least husky fails more gracefully.
ideally the pre-commit install line does too..

Yeah, there multiple things that assume you did a git clone, at least husky fails more gracefully. ideally the pre-commit install line does too..

alright its running, but there are no step updates in the the server terminal anymore, can i somehow activate them? like in the config.toml?

what do you mean exactly?

They're seeing the effect of this: https://github.com/OpenDevin/OpenDevin/pull/378#discussion_r1552135801
The logs now don't print to console, instead they go into a fine in ./logs .. I think.

what do you mean exactly?

well before i could see the steps in the opendevin server terminal. Because some model tend to stop replying in the frontend but still outputting on the terminal, without outputting any files in the workspace tho. you can see that on the pic. So it was good to check if there was a a problem to change the model, not waiting for output and thinking its just working

They're seeing the effect of this: #378 (comment)
The logs now don't print to console, instead they go into a file in ./logs .. I think.

oh sad. i'd love to print it again or having like another tab next to the browser with the live logs so you can check whats actually going on

oh sad. i'd love to print it again or having like another tab next to the browser with the live logs so you can check whats actually going on

you can create a new issue about that 👌


Parametrize templates location

Allow default Maven/SBT project layout described in Play! Framework documentation.
pom.xml                    → Application build script
src                        → Application sources
 └ main                    → Compiled asset sources
    └ java                 → Java sources
       └ controllers       → Java controllers
       └ models            → Java business layer
    └ scala                → Scala sources
       └ controllers       → Scala controllers
       └ models            → Scala business layer
    └ resources            → Configurations files and other non-compiled resources (on classpath)
       └ application.conf  → Main configuration file
       └ routes            → Routes definition
    └ twirl
       └ views             → Templates
 └ test                    → Unit or functional tests
    └ java                 → Java source folder for unit or functional tests
    └ scala                → Scala source folder for unit or functional tests
    └ resources            → Resource folder for unit or functional tests

In SBT default template source directory is defined in SBT Twirl plugin
    sourceDirectories in compileTemplates := Seq(sourceDirectory.value / "twirl"),

and changed in Play! Framework SBT plugin (if PlayLayoutPlugin is not disabled in the build)
    sourceDirectories in (Compile, TwirlKeys.compileTemplates) := Seq((sourceDirectory in Compile).value),

In previous versions of this plugin template files could be located in any (Java or Scala) source directory.
According to Play! Framework documentation, suggested location in default SBT layout is src/main/twirl and it should be possible to configure Maven project this way as well.

New 1.0.0-rc3-SNAPSHOT snapshot deployed


Update support for Ubuntu

[x] Add support for Ubuntu 20.10
[x] Drop support for Ubuntu 16.04 LTS
[x] Drop support for Ubuntu 19.10

currently Ubuntu 20.10 build will fail until https://github.com/dotnet/core/issues/5017 is fixed...


Issue with /docs/api-reference/v1/definitions/

This is a...

[ ] Feature Request
[x ] Bug Report

Problem:
The documentation on http probes does not specify whether the kubelet attempts to validate certificate paths if the liveness URL has scheme==https.  I have reason to believe from reading this code
https://github.com/kubernetes/kubernetes/blob/55bee3ad21f025b1416a4e1f10de753f484b66d3/pkg/probe/http/http.go#L34
that the kubelet does not try to validate the cert path.  But official documentation stating that would be helpful.
Proposed Solution:
Document if the kubelet skips cert path validation when probing an HTTPS liveness or readiness path.
Page to Update:
http://kubernetes.io/...

/close
No longer a issue.


Clarify HAPROXY doc

Description

[ ] TODO add redirects
[ ] TODO make changes in enteprise

Urgency

[ ] Blocker
[ ] High
[x] Medium

Requirements

Test all commands and procedures.
Build content locally and test for formatting/links.
Add redirects to dcos-website/redirect-files.
Change all affected versions (e.g. 1.7, 1.8, and 1.9).
See the contribution guidelines.

The reason we haven't done this before is that people may want to configure HAProxy in front of Admin Router for more than one reason. cc @jgehrcke

@emanic re haven't done this before - do you mean add this line: This can be useful if you want to put SSL with your own certificate on top of DC/OS. DC/OS does not currently support adding your own certificates directly into Admin Router.?

@joel-hamill Not sure Admin Router does not support adding your own certificates. It is possible to add your own certificate to Admin Router. I have a ticket to document this procedure.

@alberts approved these changes re not support adding your own certificates. we don't need to document every situation possible, but some context will help our readers. we can always iterate later and add more reasons.

@jgehrcke re post_title and nav_title should stay as they are - the current title is very implementation-specific and needs to be changed. the revised title clarifies the purpose of the procedure. i worked with albert to create this revised title.

the revised title clarifies the purpose of the procedure

Well, I disagree :).
The major intent of this piece of documentation is to show how this can be achieved:

The HTTP Proxy must perform on-the-fly HTTP request and response header modification because DC/OS is not aware of the custom hostname and port that is being used by user agents to address the HTTP proxy.

(that's a quote from the doc page)
Also, a quote from https://github.com/dcos/dcos-docs/pull/607#discussion_r81647485:

This help page was actually written with a motivation quite different from certificates.

I know that because I created this config for solving a problem independent of certificates.
If nav_title says "Configuring a Custom Certificate", I do not find this just misleading. It's plain wrong.

@jgehrcke i chatted with @alberts about this a bit more - and realized that this topic should actually be nested/grouped along with docs.mesosphere.com/1.9/administration/tls-ssl/ca-trust-browser/. with that understanding - i'm fine with the current title as-is.

ping @jgehrcke and @alberts for review ^

@emanic ready for merge


Make it clearer that the upgrade is actually a data import

I spun my wheels on this for awhile until I thought I should at least try to run the upgrade script against the old database. Turns out that was the trick. But it's not clear from https://github.com/siwapp/siwapp-sf3/wiki/Upgrading that someone needs to create a new database, run the install commands, and then run the import.

Hi, thanks for the feedback. Good point, i updated the text there a bit. If you have some more suggestions, let me know.


Lint Notebooks

Describe your changes and why you are making these changes
Small PR to fix black linter errors on our notebooks.
Related issue number (if any)
N/A found this while working on install_local.py and linting my code.
Checklist before requesting a review

[x] I have created a descriptive PR title. The PR title should complete the sentence "This PR...".
[x] I have performed a self-review of my code.
[x] I have included a small demo of the changes. For the UI, this would be a screenshot or a Loom video.
[x] If this is a new feature, I have added unit tests and integration tests.
[x] I have run the integration tests locally and they are passing.
[x] I have run the linter script locally (See python3 scripts/run_linters.py -h for usage).
[x] All features on the UI continue to work correctly.
[x] Added one of the following CI labels:

run_integration_test: Runs integration tests
skip_integration_test: Skips integration tests (Should be used when changes are ONLY documentation/UI)

@agiron123, I'm doing a bunch of updates to our example notebooks and will have a PR out later today. I'll make sure to run black before making that PR, but I'm going to go ahead and close this for now. Let me know if you have any concerns/objections.


Update Validator Registry TP to Use Config Setting for Enclave Basename

NOTE - This PR is built on STL-144 (PR #534).  That PR needs to be merged before this PR.  I will rebase it once that PR is merged.  Only the last two commits are new code for this PR.
This updates the VR TP to use valid enclave basename values found in the config settings on the blockchain.   Updates include:

Updates the VR TP to use the config settings for valid enclave basename values
Updates all affected tests

Resolves: STL-146
To test:
To test this locally, start up a validator as such (the instructions assume you are running inside Vagrant VM):
sawtooth admin keygen validator
sawtooth config genesis --key ~/sawtooth/keys/validator.priv -o config-genesis.batch
sawtooth config proposal create -k ~/sawtooth/keys/validator.priv sawtooth.consensus.algorithm=poet sawtooth.poet.report_public_key_pem="$(cat /project/sawtooth-core/consensus/poet/simulator/packaging/simulator_rk_pub.pem)" sawtooth.poet.valid_enclave_measurements=$(poet characteristic measurement) sawtooth.poet.valid_enclave_basenames=$(poet characteristic basename) -o config.batch
poet genesis -k ~/sawtooth/keys/validator.priv -o poet_genesis.batch
sawtooth admin genesis config-genesis.batch config.batch poet_genesis.batch
validator -vv --public-uri http://localhost:8080

NOTE: order is important in the sawtooth admin genesis command as the proposal to create sawtooth.poet.report_public_key, sawtooth.poet.valid_enclave_measurements, and sawtooth.poet.valid_enclave_basenames (config.batch) has to appear before the validator registry transaction for the genesis validator (poet_genesis.batch) as the validator registry TP needs to be able to fetch the value when verifying the VR transaction.
Start up a config TP:
tp_config -vv tcp://localhost:40000
Start up a validator registry TP:
tp_validator_registry -vv tcp://localhost:40000
All three should start up successfully.

Re-pushed PR after merge of STL-144

Doing a quick rebase to verify nothing broken before merge


Hypershift Image Pull Policy

Do not always pull Hypershift images

What this PR does / why we need it:
Which issue(s) this PR fixes (optional, use fixes #<issue_number>(, fixes #<issue_number>, ...) format, where issue_number might be a GitHub issue, or a Jira story:
Fixes #
Checklist

[ ] Subject and description added to both, commit and PR.
[ ] Relevant issues have been referenced.
[ ] This change includes docs.
[ ] This change includes unit tests.

/hold
Thanks @pcrentsil. Please squash commits reasonably, use imperative mood and add a PR and commit desc elaborating "why" this change.

/label tide/merge-method/squash
/hold

/label tide/merge-method-squash

@alvaroaleman comments were updated, commits squashed please take a look. Thank you,

/cherry-pick release-4.9

/cherry-pick release-4.10


Display a warning when the server uses GZIP compression

Also add a warning event. If a handler is binded to this event, no warnings should be emitted, instead the event will be triggered with the warning code as an extra parameter.

Stale issue


AtomicPi shopping list

Picture of the setup: https://twitter.com/openoms/status/1135489673244160001
The board:
https://www.amazon.com/Atomic-Pi-High-Speed-Peripherals/dp/B07N298F2B/
Barrel to wire adapter:
https://www.ebay.co.uk/itm/BARREL-JACK-DC-to-Screw-Wire-CONNECTOR-CCTV-MOTORS-PCB-LED-WIRING-CABLE-REPAIR/332637315537
5x10 cm male-to-male Dupont cables:
https://www.ebay.co.uk/itm/DuPont-Hook-up-Cable-wire-Rainbow-Ribbon-of-40-10-Wires-Male-Male-Female-Female/182343824990
Powered USB Hub with 3A power supply:
https://www.amazon.co.uk/SuperSpeed-Individual-Switches-Charging-Splitter-USB-3-0-hub-15w-AC-adapter/dp/B07B2HJG8P/

For powering the AtomicPi's 12v on-board Audio amplifier and/or a small 12v HDMI monitor often sold for in-car use, you could use a dual-DC output supply like one of these from Mean Well or other brand:


s390x: Fix runtime build for s390x

Add the missing migration from kataVSOCK to types.VSock (see #2050) for s390x.
Fixes: #2086
Signed-off-by: Jan Schintag<EMAIL_ADDRESS>

/cc @jodh-intel and /cc @devimc

/test

/test-ubuntu
seems the test failed to build kubernetes

@devimc no problem, it happens sometimes.


PR: Add documentation element to calltips for the IPython Console

Description of Changes

[x] Wrote at least one-line docstrings (for any new functions)
[ ] Added unit test(s) covering the changes (if testable)

[x] Included a screenshot or animation (if affecting the UI, see Licecap)

Support documentation again in the calltips from the IPython Console:

Issue(s) Resolved

Fixes #9529
Affirmation
By submitting this Pull Request or typing my (user)name below,
I affirm the Developer Certificate of Origin
with respect to all commits and content included in this PR,
and understand I am releasing the same under Spyder's MIT (Expat) license.

I certify the above statement is true and correct: dalthviz

@dalthviz, please add the object's name to the beginning of the signature (if it's not present) and also show a maximum of five lines in the calltip. Let's leave the wrapping to @goanpeca, so he can address that for hovers, calltips and tooltips at the same time when he solves issue #9543.
Besides, please also a a test for np.abs to cover the case reported on issue #9529.


[8.x] Update Factory.php

No longer creating a new factory when editing properties throught their respective methods.
This is causes issues when trying to implement an OOP style structure in your factories.
E.g. when an afterCreate Closure (registered in the configure() method) gets called, the $this->faker property is null because $this->faker = $this->withFaker() (inside getRawAttributes()) got called on a different instance of the factory.
Furthermore when setting (custom)properties to the factory within e.g. definition() those properties are not visible within the in configure() registerd closures because those properties would have been set on a different instance.

This is a major breaking change, since things are now being mutated. Please send to master (9.x).

@GrahamCampbell No problem, however I do not seem to have access to a 9.x branch, or it does not exist?

No plans to accept this on any branch.

The next patch creates the faker instance in the factory constructor so that particular problem won't be an issue anymore.

@taylorotwell That does not mean it is good practice to return a new instance of the class whenever a property gets mutated. If anyone would ever try to use the factory system, it should at least contain a correct (and readable) workflow.


Update scalafmt

Updates scalafmt

Closed in favour of https://github.com/aiven/guardian-for-apache-kafka/pull/269

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 0.0%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
0

Relevant Lines:
0

💛  - Coveralls


[v2.7] Update ACI-CNI to <IP_ADDRESS>

There is new ACI-CNI version <IP_ADDRESS> and <IP_ADDRESS> which is an upgrade to <IP_ADDRESS>. We currently have included in KDM for RKE1 provisioned clusters.

Closing this as Done since the PRs are merged and are originated from 3rd party responsible for testing.


Add support for other aws partitions by tokenizing regions

Based off @jordiup 's work on adding partition support:

Tokenizes the region and determines partition based on that. I think this will be more future proof than a static list of regions.
Fixes the console URL, which differs by partition.

Tested and appears functional. Gets me a valid console in both govcloud and commercial. I am unable to test china or the ISOs.
Supercedes #146 to solve #138

🎉 congratulations on the first contribution @fdamstra! This looks good - thanks a lot for helping Granted support other partitions. I've taken a quick look over the changes - @jordiup could you please have a look too?

Thanks for the help @fdamstra, I'm really happy with the changes, you smashed it. I'll merge now ✅


MAC OS: Cannot obtain a lock on data directory

As first time user tried to install Dogecoin Core first time on Mac. Tried to install it on external hardware.

Open Dogecoin Core Version v1.14.3
Error Message: Cannot obtain a lock on data directory ........ Dogecoin Core is probably already running. No such file or directory.

OS: Big Sur
CPU: 1,6 Ghz i5
RAM: 8gb
Disk size: 128gb
Disk Type (HD/SDD): 1000gb

Assuming this is QT, if you open ~/Library/Preferences/org.dogecoin.Dogecoin-Qt.plist, what does strDataDir say and does that location exist?

If the datadir was copied from another system, maybe you need to remove the lock file with
rm .lock
?

@poll456 @jakusb Were you able to solve this issue?

I did, I believe it was something to do with permissions.


K8s: Exposing revision_history_limit

Closes https://github.com/lacework/terraform-kubernetes-agent/issues/32
JIRA https://lacework.atlassian.net/browse/ALLY-599

Make it so! Lets run our compatibility matrix 💯

MAKE_IT_SO 👍🏽


Fix keepalived config file error when there are no services

When my kubernetes there is no any service, I was getting the error below
Tue Sep  5 20:20:36 2017: Registering gratuitous ARP shared channel
Tue Sep  5 20:20:36 2017: Opening file '/etc/keepalived/keepalived.conf'.
Tue Sep  5 20:20:36 2017: (vips): No VIP specified; at least one is required
Tue Sep  5 20:20:37 2017: Stopped
Tue Sep  5 20:20:37 2017: Keepalived_vrrp exited with permanent error CONFIG. Terminating
Tue Sep  5 20:20:37 2017: Stopping

To fix it, I check if the VIPs list is empty then I only generate the virtual infrastructure if the list isn't empty.

@walteraa thanks!


REACT18 TS - Children are no longer a implicit propperty of an FC

in react 18 FC typings changed and children are no longer implied, they now shoudl be typed.
 Overload 1 of 2, '(props: WaypointProps | Readonly<WaypointProps>): Waypoint', gave the following error.
    Type '{ children: Element; onEnter: () => void; }' is not assignable to type 'IntrinsicAttributes & IntrinsicClassAttributes<Waypoint> & Readonly<WaypointProps>'.
      Property 'children' does not exist on type 'IntrinsicAttributes & IntrinsicClassAttributes<Waypoint> & Readonly<WaypointProps>'.
      ```

      I am making a PR to fix this.

Seems i spoke too soon, Im not allowed to just PR. Hereby an updated index.d.ts
import * as React from "react";

export declare class Waypoint extends React.Component<
  Waypoint.WaypointProps,
  {}
> {
  static above: string;
  static below: string;
  static inside: string;
  static invisible: string;
}

declare namespace Waypoint {
  interface CallbackArgs {
    /*
     * The position that the waypoint has at the moment.
     * One of Waypoint.below, Waypoint.above, Waypoint.inside, and Waypoint.invisible.
     */
    currentPosition: string;

    /*
     * The position that the waypoint had before.
     * One of Waypoint.below, Waypoint.above, Waypoint.inside, and Waypoint.invisible.
     */
    previousPosition: string;

    /*
     * The native scroll event that triggered the callback.
     * May be missing if the callback wasn't triggered as the result of a scroll
     */
    event?: Event;

    /*
     * The waypoint's distance to the top of the viewport.
     */
    waypointTop: number;

    /*
     * The distance from the scrollable ancestor to the viewport top.
     */
    viewportTop: number;

    /*
     * The distance from the bottom of the scrollable ancestor to the viewport top.
     */
    viewportBottom: number;
  }

  interface WaypointProps {
    /**
     * Function called when waypoint enters viewport
     * @param {CallbackArgs} args
     */
    onEnter?: (args: CallbackArgs) => void;

    /**
     * Function called when waypoint leaves viewport
     * @param {CallbackArgs} args
     */
    onLeave?: (args: CallbackArgs) => void;

    /**
     * Function called when waypoint position changes
     * @param {CallbackArgs} args
     */
    onPositionChange?: (args: CallbackArgs) => void;

    /**
     * Whether to activate on horizontal scrolling instead of vertical
     */
    horizontal?: boolean;

    /**
     * `topOffset` can either be a number, in which case its a distance from the
     * top of the container in pixels, or a string value. Valid string values are
     * of the form "20px", which is parsed as pixels, or "20%", which is parsed
     * as a percentage of the height of the containing element.
     * For instance, if you pass "-20%", and the containing element is 100px tall,
     * then the waypoint will be triggered when it has been scrolled 20px beyond
     * the top of the containing element.
     */
    topOffset?: string | number;

    /**
     * `bottomOffset` can either be a number, in which case its a distance from the
     * bottom of the container in pixels, or a string value. Valid string values are
     * of the form "20px", which is parsed as pixels, or "20%", which is parsed
     * as a percentage of the height of the containing element.
     * For instance, if you pass "20%", and the containing element is 100px tall,
     * then the waypoint will be triggered when it has been scrolled 20px beyond
     * the bottom of the containing element.
     *
     * Similar to `topOffset`, but for the bottom of the container.
     */
    bottomOffset?: string | number;

    /**
     * A custom ancestor to determine if the target is visible in it.
     * This is useful in cases where you do not want the immediate scrollable
     * ancestor to be the container. For example, when your target is in a div
     * that has overflow auto but you are detecting onEnter based on the window.
     */
    scrollableAncestor?: any;

    /**
     * If the onEnter/onLeave events are to be fired on rapid scrolling.
     * This has no effect on onPositionChange -- it will fire anyway.
     */
    fireOnRapidScroll?: boolean;

    /**
     * Use this prop to get debug information in the console log. This slows
     * things down significantly, so it should only be used during development.
     */
    debug?: boolean;
    /**
     * Since React 18 Children are no longer implied, therefore we specify them here
     */
    children?: React.ReactNode;
  }
}

Jump a bump as I am getting the same error, would be great to get this merged.

Hi there I am also running  in this issue, , would be great to get this merged asap.

I have created a PR for you here. Would be nice to merge it at some point. https://github.com/civiccc/react-waypoint/pull/362


Any plans to add SPOTIFY to youtube-dl? It would be great!

Just a question...

There are technical difficulties. See #10344

Any update on this? Spotify support would be great

Nope. Any further updates will be posted to #10344.


How to get the precision-recall curves on val and test set for each class, for a custom dataset of type COCODataset

Hi,
I have a custom dataset of type COCODataset, and I trained a few Mask R-CNN and Cascade Mask R-CNN models on it. For each model I would like to compute the precision-recall curves for each class on the validation and test set (even just the validation set would be ok, for a start). How can I do that? I searched the documentation but I couldn't find an answer. I had a look at this closed issue
https://github.com/open-mmlab/mmdetection/issues/85
which mentions a merged PR
https://github.com/CjayBillones/mmdetection/commit/875d78da3e1c56cafcf1c26df4bd4a8b5103d15d
however, the PR seems to concern a fork of the original repository, not this one. Do you think you could merge it here too? Or is there another way to get the precision-recall curves for a trained model? Thanks

https://mmdetection.readthedocs.io/en/latest/useful_tools.html#error-analysis
Hi, You can refer to this doc.

Thanks, I'll have a look and let you know if it answers my question (in which case I'll close the issue) or if I need more info.

yes i will be taking a look at it and will update here if i manage to find anything

@BIGWangYuDong may i ask what is the result that is returned from https://github.com/open-mmlab/mmdetection/blob/1a90fa80a761fe15e69111a625d82874ed783f7b/mmdet/apis/test.py#L17
Am hoping to see if there is the probability output of the model over here for each detection

@BIGWangYuDong may i ask what is the result that is returned from
https://github.com/open-mmlab/mmdetection/blob/1a90fa80a761fe15e69111a625d82874ed783f7b/mmdet/apis/test.py#L17
There are 5 values for each predictions made by the model. Am i safe to assume that the last value is the probability that is output by the model for the respective prediction?

@junhuplim the last value is score

@AndreaPi Any update on this ?


Handling fromPath errors in SetResponse constructor

When creating a new SetResponse instance, the constructor may make calls to pathSyntax.fromPath. If the presumed path is invalid, the parser may throw an exception which since done in the constructor is uncaught. This catches those exception and emits an error on _subscribe.

Coverage decreased (-0.2%) to 92.527% when pulling 8f37bbcbe40c2c09c3b1815c1b4ea25bd77dd7bb on catchErrorsInSetResponse into df45d9a98a1b2143291cb111fe26e079750ca828 on master.

Good catch, thanks for the PR. Could you add a unit test for this scenario? Does this issue exist in GetResponse as well?

On looking into SetResponse, it appears that input validation should be handled in lib/support/validateInput.js. Can you verify whether the faulty input is handled correctly in that function, and if not, fix it in that location?

On looking into SetResponse, it appears that input validation should be handled in lib/support/validateInput.js. Can you verify whether the faulty input is handled correctly in that function, and if not, fix it in that location?

@jcranendonk it does look like this is invoked before the SetResponse constructor and is the more appropriate place to catch the error.

@jcranendonk moved the error handling to lib/support/validateInput.js and added a couple of tests.


HLint built with GHC 9.2 trips over MIN_VERSION_ghc CPP

binaryInterfaceVersion :: Word16
#if MIN_VERSION_ghc(9,4,0) && !MIN_VERSION_ghc(9,5,0)
binaryInterfaceVersion = 41

binaryInterfaceVersionCompatibility :: [Word16]
binaryInterfaceVersionCompatibility = [binaryInterfaceVersion]
#else
#error Unsupported GHC version
#endif

I don't pretend to understand how HLint exposes the MIN_VERSION_ghc CPP var when evaluating the InterfaceFile file but it exposes the version of GHC with which it has been built, not the one that is specified in the cabal.project file.
Not sure how to remedy to this unless we can get HLint to build with GHC 9.4

@shayne-fletcher okay that's an interesting workaround, thanks a bunch! Any idea if that could be defined in the .hlint.yaml?

sorry, that i don't know.

Works for me! :)
Thanks for the useful answer anyway. :heart:

@tchoutri an alternative that lets this module get a pass from HLint.
  binaryInterfaceVersion :: Word16
  #if MIN_VERSION_ghc(9,4,0) && !MIN_VERSION_ghc(9,5,0)
  binaryInterfaceVersion = 41

  binaryInterfaceVersionCompatibility :: [Word16]
  binaryInterfaceVersionCompatibility = [binaryInterfaceVersion]
  #else
+ #ifndef __HLINT__
  #error Unsupported GHC version
+ #endif
  #endif


Conconrency

This PR does some clean-up among which includes disabling (for now) nesting CPUProcesses from CPUThreads .
fixes the LoadError issue halting  tests for julia >= v1.3
updates to travis configuration file

@OkonSamuel This is great.
Sorry to be a pain, but would it be possible to rebase and squash some of the commits? There's a lot of them and a lot of them look like intermediate steps and fixing minor errors. Would make a review easier.

@OkonSamuel This is great.
Sorry to be a pain, but would it be possible to rebase and squash some of the commits? There's a lot of them and a lot of them look like intermediate steps and fixing minor errors. Would make a review easier.

Ok

cc @ablaom

Awesome work, thanks. Just the one question.

@ablaom moving this to clean! method breaks tests (can't convert between parametric types) as the type is fixed after the constructor creates the TunedModel

Two fixes are

mutate from within TunedModel constructor
make acceleration resource type in DeterministicTunedModel and ProbabilisticticTunedModel
struct and AbstractType as thus

mutable struct DeterministicTunedModel{T,M<:Deterministic} <: MLJBase.Deterministic
    model::M
    tuning::T  # tuning strategy
    resampling # resampling strategy
    measure
    weights::Union{Nothing,Vector{<:Real}}
    operation
    range
    train_best::Bool
    repeats::Int
    n::Union{Int,Nothing}
    acceleration::AbstractResource
    acceleration_resampling::AbstractResource
    check_measure::Bool
end

mutable struct ProbabilisticTunedModel{T,M<:Probabilistic} <: MLJBase.Probabilistic
    model::M
    tuning::T  # tuning strategy
    resampling # resampling strategy
    measure
    weights::Union{Nothing,AbstractVector{<:Real}}
    operation
    range
    train_best::Bool
    repeats::Int
    n::Union{Int,Nothing}
    acceleration::AbstractResource
    acceleration_resampling::AbstractResource
    check_measure::Bool
end

@OkonSamuel Ah, I see.
I would prefer making the type annotations abstract.

Sadly, I think the new restrictions mean we need to make this a minor release, don't you think?

yeah. true

I think I would prefer to avoid making the code more complex, for the sake of allowing what we have decided is a dubious practice in any case (nesting processes within threads).
However, I would like to implement https://github.com/alan-turing-institute/MLJTuning.jl/issues/40 before making a breaking release.
So let's leave this unmerged for now, in case we have to slip in some patches in the meantime. Feel free to make any further tweaks.


Public Keys being identified as secrets

Describe the bug
Public keys are being falsely identified as secrets.
To Reproduce
Make a commit with these contents and then run gitleaks
<Reference Include="Foo.Bar, Version=1.2.34, Key=1111xolgCBP3LGczeUMNKQgi5YjTXgl59C0GdXdd65U">
    <Private>True</Private>
</Reference>
<Reference Include="Foo.Bar, Version=1.2.34, Token=2222xolgCBP3LGczeUMNKQgi5YjTXgl59C0GdXdd65U">
    <Private>True</Private>
</Reference>
<Reference Include="Foo.Bar, Version=1.2.34, KeyToken=3333xolgCBP3LGczeUMNKQgi5YjTXgl59C0GdXdd65U">
    <Private>True</Private>
</Reference>
<Reference Include="Foo.Bar, Version=1.2.34, PublicKey=4444xolgCBP3LGczeUMNKQgi5YjTXgl59C0GdXdd65U">
    <Private>True</Private>
</Reference>
<Reference Include="Foo.Bar, Version=1.2.34, PublicToken=5555xolgCBP3LGczeUMNKQgi5YjTXgl59C0GdXdd65U">
    <Private>True</Private>
</Reference>
<Reference Include="Foo.Bar, Version=1.2.34, PublicKeyToken=6666xolgCBP3LGczeUMNKQgi5YjTXgl59C0GdXdd65U">
    <Private>True</Private>
</Reference>

You'll see all 6 of the references will be identified as a secret.
Expected behavior
I would expect Key=, Token=, and even KeyToken= to be identified as secrets but not PublicKey=, PublicToken=, or PublicKeyToken.
Basic Info (please complete the following information):

OS: Ubuntu (but probably doesn't make any difference)
Gitleaks Version: Latest Release (8.15.2)

Additional context
This is a real world example I guess where some .NET projects have these .vbproj files with these references like that.  In all cases Public keys and tokens are meant to be public.
These tokens are constantly changing while upgrading dependencies making it difficult to automate their exclusion; they shouldn't be identified in the first place.
cc @zricethezav

I hit that as well, my solution was to add public to the matcher regex, and have a allowlist for publickeytoken.

I handled this by overriding the rule in a custom config and adding them as allowed regexes taking the whole line into account:
[rules.allowlist]
regexTarget = "line"
regexes = [
    "PublicKey",
    "PublicToken",
    "PublicKeyToken"
]
stopwords = [...]

Will have to double check later on that occurrences do not happen to be on the same line as actual secrets but for now it has excluded a lot of false positives so I can focus on leaks that are more likely to be problems. Would your approach @kij mean I don't need to double check this later on as it will just ignore the single false positive on the line and still raise other possible leaks on that same line?

Lines which contains PublicKey/PublicToken/PublicKeyToken would now not be triggered if they contain any secret.
You can build a few test files to convince yourself of that.

Supposedly fixed @ https://github.com/gitleaks/gitleaks/pull/1606/files#diff-9deacb350972191816c35dc4549a53b30e66af3efbab4bfc852f13a6ae50e59cR65


Circular dependency detected while autoloading constant

Newly I have 12 static cron jobs scheduled with resque-scheduler starting at the same time. The scheduler always raises some exceptions during queuing the jobs the first time, at second time no errors are raised and the jobs are queued normally.
I use:

resque 1.27.4
resque-scheduler 4.3.1
rails 5.1.6
Ruby 2.5.1

I digged a little bit further and discovered that the issue is that the jobs started at the same time. And if I play with the Rails app config I get different errors.
With config.cache_classes = false I get only this error:
resque-scheduler: [ERROR] 2018-06-26T14:14:00+02:00: RuntimeError: Circular dependency detected while autoloading constant Core::Importer::Jobs::Job
["/Users/test_user/.rvm/gems/ruby-2.5.1@core/gems/activesupport-5.1.6/lib/active_support/dependencies.rb:509:in `load_missing_constant'",
"/Users/test_user/.rvm/gems/ruby-2.5.1@core/gems/activesupport-5.1.6/lib/active_support/dependencies.rb:202:in `const_missing'",
"/Users/test_user/.rvm/gems/ruby-2.5.1@core/gems/resque-scheduler-4.3.1/lib/resque/scheduler/util.rb:28:in `block in constantize'",
"/Users/test_user/.rvm/gems/ruby-2.5.1@core/gems/resque-scheduler-4.3.1/lib/resque/scheduler/util.rb:22:in `each'",
"/Users/test_user/.rvm/gems/ruby-2.5.1@core/gems/resque-scheduler-4.3.1/lib/resque/scheduler/util.rb:22:in `constantize'",
"/Users/test_user/.rvm/gems/ruby-2.5.1@core/gems/resque-scheduler-4.3.1/lib/resque/scheduler.rb:231:in `enqueue_from_config'",
"/Users/test_user/.rvm/gems/ruby-2.5.1@core/gems/resque-scheduler-4.3.1/lib/resque/scheduler.rb:214:in `enqueue'",
"/Users/test_user/.rvm/gems/ruby-2.5.1@core/gems/resque-scheduler-4.3.1/lib/resque/scheduler.rb:426:in `enqueue_recurring'",
"/Users/test_user/.rvm/gems/ruby-2.5.1@core/gems/resque-scheduler-4.3.1/lib/resque/scheduler.rb:144:in `block (2 levels) in load_schedule_job'",
"/Users/test_user/.rvm/gems/ruby-2.5.1@core/gems/rufus-scheduler-3.5.0/lib/rufus/scheduler/jobs.rb:210:in `do_call'",
"/Users/test_user/.rvm/gems/ruby-2.5.1@core/gems/rufus-scheduler-3.5.0/lib/rufus/scheduler/jobs.rb:254:in `trigger_now'",
"/Users/test_user/.rvm/gems/ruby-2.5.1@core/gems/rufus-scheduler-3.5.0/lib/rufus/scheduler/jobs.rb:296:in `block (3 levels) in start_work_thread'",
"/Users/test_user/.rvm/gems/ruby-2.5.1@core/gems/rufus-scheduler-3.5.0/lib/rufus/scheduler/jobs.rb:299:in `block (2 levels) in start_work_thread'",
"/Users/test_user/.rvm/gems/ruby-2.5.1@core/gems/rufus-scheduler-3.5.0/lib/rufus/scheduler/jobs.rb:285:in `loop'",
"/Users/test_user/.rvm/gems/ruby-2.5.1@core/gems/rufus-scheduler-3.5.0/lib/rufus/scheduler/jobs.rb:285:in `block in start_work_thread'"]

With config.cache_classes = true I get the error above and:
resque-scheduler: [ERROR] 2018-06-26T14:14:00+02:00: ArgumentError: A copy of Core::Importer::Jobs has been removed from the module tree but is still active!
["/Users/test_user/.rvm/gems/ruby-2.5.1@core/gems/activesupport-5.1.6/lib/active_support/dependencies.rb:496:in `load_missing_constant'",
"/Users/test_user/.rvm/gems/ruby-2.5.1@core/gems/activesupport-5.1.6/lib/active_support/dependencies.rb:202:in `const_missing'",
"/Users/test_user/.rvm/gems/ruby-2.5.1@core/gems/resque-scheduler-4.3.1/lib/resque/scheduler/util.rb:28:in `block in constantize'",
"/Users/test_user/.rvm/gems/ruby-2.5.1@core/gems/resque-scheduler-4.3.1/lib/resque/scheduler/util.rb:22:in `each'",
"/Users/test_user/.rvm/gems/ruby-2.5.1@core/gems/resque-scheduler-4.3.1/lib/resque/scheduler/util.rb:22:in `constantize'",
"/Users/test_user/.rvm/gems/ruby-2.5.1@core/gems/resque-scheduler-4.3.1/lib/resque/scheduler.rb:231:in `enqueue_from_config'",
"/Users/test_user/.rvm/gems/ruby-2.5.1@core/gems/resque-scheduler-4.3.1/lib/resque/scheduler.rb:214:in `enqueue'",
"/Users/test_user/.rvm/gems/ruby-2.5.1@core/gems/resque-scheduler-4.3.1/lib/resque/scheduler.rb:426:in `enqueue_recurring'",
"/Users/test_user/.rvm/gems/ruby-2.5.1@core/gems/resque-scheduler-4.3.1/lib/resque/scheduler.rb:144:in `block (2 levels) in load_schedule_job'",
"/Users/test_user/.rvm/gems/ruby-2.5.1@core/gems/rufus-scheduler-3.5.0/lib/rufus/scheduler/jobs.rb:210:in `do_call'",
"/Users/test_user/.rvm/gems/ruby-2.5.1@core/gems/rufus-scheduler-3.5.0/lib/rufus/scheduler/jobs.rb:254:in `trigger_now'",
"/Users/test_user/.rvm/gems/ruby-2.5.1@core/gems/rufus-scheduler-3.5.0/lib/rufus/scheduler/jobs.rb:296:in `block (3 levels) in start_work_thread'",
"/Users/test_user/.rvm/gems/ruby-2.5.1@core/gems/rufus-scheduler-3.5.0/lib/rufus/scheduler/jobs.rb:299:in `block (2 levels) in start_work_thread'",
"/Users/test_user/.rvm/gems/ruby-2.5.1@core/gems/rufus-scheduler-3.5.0/lib/rufus/scheduler/jobs.rb:285:in `loop'",
"/Users/test_user/.rvm/gems/ruby-2.5.1@core/gems/rufus-scheduler-3.5.0/lib/rufus/scheduler/jobs.rb:285:in `block in start_work_thread'"]

The config.eager_load does not matter in this case. The result is the same with true and false. Parallelly class loading in different threads seems to be the problem.
A workaround is to change the cron expression. If I let start the 12 jobs sequentially with 5 seconds delay, no error is raised.
Does anyone know a fix for this?

This seems to be a bug in the application. A dependency of a class is referencing the same target class before the dependency is fully loaded, this is causing a circular autoloading. I'll have to make sure that all classes can be loaded without this circular autoloading.

I'll have to make sure that all classes can be loaded without this circular autoloading.

Hello @rafaelfranca, have you created a new issue for this or why have you closed this one without doing anything?

Sorry, I made a typo in my message. I meant: You have to make sure all classes can be loaded without this circular autoloading. There is a bug in your application, it is not resque-schedule issue.

But they can be loaded without errors, if I change the cron expression so that they are started one after another. So basically there are no problems loading the classes.
The issue comes up if resque-scheduler loads the same class multiple times "simultaneously".
Is resque-scheduler starting the cron jobs in different threads or sequentially in one thread? The real cause need not to be resque-scheduler but perhaps how Ruby or Rails do class loading (maybe not thread safe).

The classes can load fine in some ordering, but in others not. This is why you are getting this problem only occasionally. Sometimes the order your classes are loaded are different, and in those cases you get an exception. You need to make sure your classes can be loaded correctly in any order.

➕
We just hit this problem this week after changing one of our items in scheduler.yml to be the same as one of the others.

You need to make sure your classes can be loaded correctly in any order.

I have no clue what this would mean in my case. I have a Rails app which is doing pretty much nothing out of the ordinary when it comes to loading the app.

I got the same error out of the blue Yesterday. I could not reproduce the issue on my dev machine, so I didn't debug any further, but what seemed to be surely fixing the class loading issue for resque scheduler was to require all jobs in advance when setting up the resque task:
require 'resque/tasks'
require 'resque/scheduler/tasks'

namespace :resque do
  task :setup => :environment

  task :setup_schedule => :setup do
    require 'resque-scheduler'

    Dir[Rails.root.join('app/jobs/*_job.rb')].each do |job_file_path|
      require File.basename(job_file_path, '.rb')
    end
  end

  task :scheduler => :setup_schedule
end

Got the same issue out of the blue Yesterday. The bug was defining task 'resque:setup' => :environment twice in rake files. What I don't get, is why this started to reliably occur yesterday when it was working OK like this for 4 years and nothing related seems to be changed in the codebase.

The usage of the zeitwerk mode introduced with Rails 6 seems to fix this problem as well.

In case it helps anyone, I think this is actually a bug in ActiveSupport that can occur anytime you have multiple threads autoloading a nested constant at the same time. This happens in resque-scheduler when you have multiple jobs configured to start at the same time. A separate thread is created to load each job class and call #enqueue and these threads can run simultaneously.
Related Rails issue: https://github.com/rails/rails/issues/33209


Add a example for tableview with dynamic cell.

When call the table view's tableView:heightForRowAtIndexPath: method,get MASCustomTableViewCell  instance with call the table view's  dequeueReusableCellWithIdentifier: method,that will result in a memory leak as the cell is created but never returned from the tableView:cellForRowAtIndexPath: method.
So you may be get MASCustomTableViewCell  instance with the MASCustomTableViewCell's new method.

Oh, you are right. I will try to figure it out and push again.
Thank you for your suggestion.

Closing due to inactivity, but if you fix it up feel free to reopen