feat: Add support for fips and some minor code allignments

This is the support for fips in Agend-based Installer (ABI).
And solves issue #305.
In addition some minor code changes based on ansible-lint.

@veera-damisetti @isumitsolanki pls review this PR. Thank you ...

@AmadeusPodvratnik
I already had a look and looks good to me
@isumitsolanki can also review this , as this is related to ABI


Feature request: custom width for Transactions' columns

YNAB recently changed importing partners, and as a result, my Citi credit card transactions have my name appended to the front of each Payee. With this change, I can only view the first 5 characters of the Payee's name --- even with my browser at 1600px wide!
My suggestion is one of the following:

Adjust the widths of the transaction columns so that Payee is wider and the other columns that have tons of unneeded space are smaller (at least when browser width is fairly wide).
Add javascript library that allows for dynamically adjusting table widths.
Add some sort of Find-and-Replace option to hide my name from the Payee name.

Any thoughts on these options?  I may submit PR at some point, but would like to hear what others think is best for this project.

@pydolan this is already an option in the toolkit! Look for "Make Column Widths Adjustable" in the Accounts section.


x_type can't be None

https://github.com/data-intuitive/dummy-anndata/blob/1aebde0c5ccdc5a1e99907f272c735199321ff3e/src/dummy_anndata/generate_dataset.py#L11-L24
Strictly speaking an AnnData doesn't need an X. However, setting x_type to None results in:
  AssertionError: Unknown matrix type: None

See #9


Adds --watch as an option for tye run

Fixes https://github.com/dotnet/tye/issues/499.
Currently I went with the simple approach of calling dotnet watch on each project.
One thing I was trying to figure out was if we could make it so dotnet watch didn't need to build on first iteration, as we build all projects right beforehand. Passing in --no-build doesn't work though.
I also considered directly implementing dotnet watch in tye itself, however that seems bug prone and I didn't see a huge benefit.

Actually thought about this feature yesterday!!

Actually thought about this feature yesterday!!

Beat ya to it 😄
I don't think it will be horrible to implement the right version of this in Tye though. I'll take a crack at it now.

Still have a bit of cleanup to do here.


Example image does not match code output

The example code prints L4  in the l4_table loop but the example image does not.

Thanks!


Windowing functions

Does data-frame implement a facility for easily computing windowing functions?  For example in python/pandas we can trivially calculate a rolling moving average with the baked-in data frame API.  Pandas contains a rich set of common window functions and also lets you supply your own function via lambda.
What's nice is the library handles bounds-checking and whatnot automatically in a convenient and ergonomic manner.
Is there a way to do this with data-frame?  If there's no built-in, what's the "canonical" way to iterate over two columns in lockstep, using one to compute the values of the other?  I'm visualizing a pretty messy LOOP construct and hoping there's an easier way.

For some of these things it's easier to convert to an array and then use array-operations.  There's an example in that document on displaced arrays implementing sliding windows:
(defparameter stocks (aops:linspace 1 100 100))
(loop for i from 0 to (- (length stocks) 20)
      do (format t "~A~%" (aops:displace stocks 20 i)))
;#(1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20)
;#(2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21)
;#(3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22)

that could be a foundation for other windowing functions.

Thanks Steve, I'll use that.


Duplicates managment

Jeremy, you are great.
Does your script remove the duplicate items? If I fetch every 5 minutes (it's an example) probably I will obtain some duplicate. Do I will have duplicate in my table?
Thank you

Thanks, @aborruso! And, yes, twick only logs each tweet once. (Retweets of a tweet, though, will show up.)

Thank you!


How to set C++ 14 as the standard?

I see there is CMAKE_CXX_STANDARD and it's set to 17, when I set it to 14 it seems nothing happens? Ofc I need it for C++ 14

As far as I am aware, the library is using features that are not yet supported on C++14, I am afraid :/ I'd have to check which ones, but it might be impossible to compile on C++14 functionality without some major changes.

Yeah, just checked - the template logic that OpenXLSX relies on is only supported as of C++17 and higher.


Add module to package.json

What issue does this pull request resolve?
To emulate esm build, you need couple thing at package.json: module and sideeffects
What changes did you make?
Bundlers will cut unused code better then now. Goog for named imports.

Thanks for your contribution @denisx. This change seems to be correct to me, just give me some time to double check.


Fix imported orders -- remove orders in state PENDING

In order:

remove owned items
remove order items
remove order

sorry, wrong project :(


Modify .txt search path to enable bash script to find bookmarks from any location

This might just be me setting it up wrong, but I found that the bash script would only find your bookmarks.txt files when it was called from within the lnks directory. When I modified the following cat *.txt on the last line to:  cat ~/lnks/*.txt then this fixed the issue for me and I could run the command from any directory. I'm using a zsh terminal on a mac if that helps?
Aside from that, I love this tool and have already been getting loads of use out of it. Thanks for sharing.

Thanks for reporting! This is definitely not you setting up things wrong but a flaw in how the script reads in the .txt files.
I've addressed your issue in https://github.com/hamvocke/lnks/commit/e2c0b14bc8d6bdfc64b8c219782e85349fcf42b4. If you fetch the latest version of the lnks.sh script you should be all set.
Let me know if there are any other issues!


send the response to client sents empty object?

so this is my structure now.
`calculate (req, res) {
let postData = {

  method: 'POST',

  uri: 'http://localhost:3000/cars',

  body: req.body,

  json: true

}

apiCall(postData)

  .then((res) => {

    res.status(200).send(res)

  })

  .catch((err) => {

    res.send(err)

  })

}
`
so in my structure i get the response when console log. but when i try to send, it sends empty object.
what is wrong in here?

All looks good to me. Did you inspect res which you get from the api call?

@analog-nico inspect in the sense? I receive the res from apicall.. I can log it in console.. but only problem is I can't send the res.. may be this is dumb question.. I'm pretty much confused here..
Thanks..

Yes, logging it to the console or using the debugger. It sounds like you have this situation:
apiCall(postData)
  .then((res) => {
    console.dir(res) // --> Logs the data as expected
    res.status(200).send(res)
  })

This means the issue is with your express call and not with request-promise.
Oh, I spotted it: Silly mistake in the end. You have a naming conflict. You use res twice. Rename it like so:
apiCall(postData)
  .then((res2) => {
    res.status(200).send(res2) // See the difference?
  })


Powerup doesn't render dashboard on external link

Users that access a dashboard using an external link without logging into Dynatrace do not see the powerup extension render the dashboard. the link to download the powerup extension remains on the dashboard and none of the tiles are processed.

this is an overall issue with external links, not related to powerup

this is an overall issue with external links, not related to powerup


Efficient element-wise comparisons

Feature description
Allow elementise comparisons (eq, neq, gt, lt, gte, lte) where the element compared against need not be instantiated to a tensor of the same shape.
Feature motivation
Please correct me if I am missing something, but I have been unable to find a way to efficiently perform element-wise comparisons. For example, I want to check that all values are the range [0, 1]. The only way I see to do this is using Tensor::greater and friends, which require matching-shape tensors as input. So a full tensor of zeros, or ones, or whatever, to compare to. For my use case this is prohibitive.
(Optional) Suggest a Solution
Option 1: generalized Rust comparison traits
The dream would by a Pythonic use of operators as t1 < t2. Unfortunately, Rust's std::cmp traits do not allow the output type of the comparison to be specified, so this is likely not soon forthcoming.
Option 2: infer D on element-wise operations, then broadcast
One approach would be to let the D dimensionality of the comparison tensor be inferred, and specialize the implementation using standardized broadcast rules. As:
pub fn greater<const D2: usize>(self, other: Tensor<B, D2, K>) -> Tensor<B, D, Bool>

Option 3: single-element comparisons only
A perhaps-less disruptive stopgap would be to only implement for the most common case, that of comparing to a single element, which can always be broadcasted to a non-empty shape:
impl <B: Backend, const D: usize, K: TensorKind<B>> Tensor<B, D, K> {
  fn eq1(self, other: Tensor<B, 1, K>) -> Tensor<B, D, Bool> { ... }
  fn neq1(self, other: Tensor<B, 1, K>) -> Tensor<B, D, Bool> { ... }
  fn greater1(self, other: Tensor<B, 1, K>) -> Tensor<B, D, Bool> { ... }
  fn lower1(self, other: Tensor<B, 1, K>) -> Tensor<B, D, Bool> { ... }
  fn greater_equal1(self, other: Tensor<B, 1, K>) -> Tensor<B, D, Bool> { ... }
  fn lower_equal1(self, other: Tensor<B, 1, K>) -> Tensor<B, D, Bool> { ... }
}

Option 4: improve optimization
On the other hand, actually instantiating the full comparison array only to call any() on it could be seen as a failure of optimization. Consider my assert_in_zero_one:
fn assert_in_zero_one<B: Backend, const D: usize, K: TensorKind<B> + BasicOps<B> + Numeric<B>>(
    x: Tensor<B, D, K>,
) {
    {
        let zero = Tensor::zeros_like(&x);
        let negative = x.clone().lower(zero);
        assert!(!negative.any().into_scalar());
    }

    let one = Tensor::ones_like(&x);
    let over_one = x.greater(one);
    assert!(!over_one.any().into_scalar());
}

In both cases, the array is instantiated only to be compared, and than anyed. This implies a much more efficient algorithm, but which the Fusion and Jit components have not arrived at.
Automatically handling such cases would be wonderful, allowing the API to be used at a higher level of abstraction. Of course, that is also the downside.

We have scalar comparison:
let tensor  = Tensor::random(..);
let mask  = tensor.greater_elem(0.5);

But also we support broadcasting, so:
let tensor = Tensor::random(..); // rank 6
let bools = Tensor::from_bool(..); // rank 1
let mask = tensor.greater(bools.unsqueeze());


Correct typo

There is some mistake inside paragraph.I fix it.

Thanks

@all-contributors please add @splasky for translation

@all-contributors please add @splasky for translation


Thermostat naming

@justinGilmer @JIMonroe : @EfremBraun pointed this out:

EB: I recommend referring to this thermostat as the Gaussian Thermostat. I’ve seen it referred to as the Hoover-Evans thermostat as well (I haven’t seen it called the Hoover thermostat, but I’m sure somebody has called it that), but simply calling it the Gaussian thermostat avoids wading into the argument about who came up with it first.

OK with calling what we currently call the Hoover thermostat the Gaussian thermostat? I don't think I've heard it called just Hoover so I will make this change unless there are objections.

Yeah, Gaussian is fine with me. Its a bit more descriptive as well.

I'll make this change in an upcoming pull request (I'll send it in a few hours).

Oops, that works too.

I've just got this into my open PR that I'm working on, @EfremBraun . So maybe your new PR can build off of mine (#44 ).
I hope to finish in the next hour.


Documentation of Authoring SDKs

Platform
What platform is your issue or question related to? (Delete other platforms).

Android
iOS
UWP

Author or host
Author
Issue
We only have Authoring SDK documentation pages for .NET and JavaScript, although there are authoring SDKs for all platforms.

I agree this should be fixed - at least a quick one-liner in our existing documentation here https://docs.microsoft.com/en-us/adaptive-cards/sdk/authoring-cards/net about how the library is optimized for the net/js platforms but not others, even though they are available as the complete renderer SDK offering for the remaining platforms.

We don't have any supported scenarios for authoring in other languages; it can be done and we should add support for them, but we don't currently do that today


Tests: add ListenAndServe tests

This increases the test coverage as these methods where not tested.
Add some cosmetic changes to the mix.

Codecov Report

Merging #562 into master will increase coverage by 0.25%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master     #562      +/-   ##
==========================================
+ Coverage   58.12%   58.37%   +0.25%
==========================================
  Files          37       37
  Lines        9877     9877
==========================================
+ Hits         5741     5766      +25
+ Misses       3095     3063      -32
- Partials     1041     1048       +7

Impacted Files
Coverage Δ

server.go
59.34% <0%> (+6.86%)
:arrow_up:

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 4bb60ce...52b9be0. Read the comment docs.


Broken comment syntax highlight (JavaScript)

Just a minor issue but I noticed that if you put a comment line in the middle of a function declaration the comment line is not showing in gray.

Ah yeah and it also happens that the word default  is not highlighted in a switch/case block.

This issue was moved to Microsoft/TypeScript-TmLanguage#61


Field parameters different between point and polgyons

Field parameters are passed differently depending on whether the service is a point or a polygon
Polygons support adding field alias information as well as more flexibility with how the attribute is displayed.
Points are a single find/replace.
ex.
FieldNames: [{
ServiceAvailability: [{
FieldName: "WEEKONE",
DisplayText: "Week 1"
}, {
FieldName: "WEEKTWO",
DisplayText: "Week 2"
}, {
FieldName: "WEEKTHREE",
DisplayText: "Week 3"
}, {
FieldName: "WEEKFOUR",
DisplayText: "Week 4"
}]
}, {
Field: "Agency : ${AGENCY}"
}, {
Field: "Contact : ${CONTACT}"
}, {
Field: "Phone: ${PHONE}"
}, {
Links: [{
DisplayText: "Website",
FieldName: "AGENCYURL"
}, {
DisplayText: "Email",
FieldName: "EMAIL"
}]
}],
versus
FieldNames: [{
FieldName: "FacilitySitePoint.NAME"
}, {
FieldName: "FacilitySitePoint.FULLADDR"
}, {
FieldName: "GovServiceInfo.PHONE"
}],

My point features are not showing up in the application, but the polygon features are.  I've tried a couple different things to make them show up, but nothing works.
I tried adding the aliases:
FieldNames: [{
Field: "Name of Facility : ${NAME}"
}, {
Field: "Full Address : ${FULLADDR}"
}, {
Field: "Phone: ${PHONE}"
}],
Did not work.
I tried editing the features and making sure the addresses matched the geocode service I'm using, but that also did not work.
The Services are all feature layers and the Urls are correct.  I'm not using a routing service and have it turned off.  Could that be the issue?


[W4.4b][T15-A2]Lin Yuxiang

#NO behavioural change, the address class retained a final string as value
#In addition to 3 classes (block, street unit) which hold the individal values of the address

check out good commit message style

Close this PR if you have no other questions


Generalized preprocessing slicing

Input dictionaries are used to define slicing methods
to be applied prior to xarray concatenation, e.g.,
selvals and iselvals.
This addresses https://github.com/pwolfram/mpas_xarray/issues/12
cc @vanroekel, @milenaveneziani

@milenaveneziani, I'm testing on edison for the coupled diags using https://github.com/pwolfram/PreAndPostProcessingScripts/tree/new_diags_xarray_update.  The key change is https://github.com/ACME-Climate/PreAndPostProcessingScripts/compare/kevans32/new_diags...pwolfram:new_diags_xarray_update?expand=1#diff-ebeca9ad22651dabcb51c2e0ec3d828aL48 to use these new arguments to the preprocessor, e.g., selvals={'nVertLevels':1} instead of vertLevel=1.

@vanroekel, can you please test this new version to see if it will handle your use cases?

@milenaveneziani, results appear to be good.  http://portal.nersc.gov/project/acme/pwolfram/coupled_diagnostics_20160805.A_WCYCL1850.ne30_oEC.edison.alpha7_00-obs/  Do you want to test to make sure this doesn't mess things up for you?

I can confirm this works for me on rhea for my version of the SST python notebook.

@pwolfram: testing it now. Question: shouldn't it be:
iselvals={'nvertlevels':1} (instead of selvals)?

@milenaveneziani, I choose iselvals because the levels are zero-indexed.  1 is both the name and index so it doesn't matter for this case, e.g.,
In [1]: import xarray as xr
ds = xr.open
In [2]: ds = xr.open_mfdataset('output/output.0024-04-01_00.00.00.nc')

In [3]: ds.nVertLevels
Out[3]:
<xarray.DataArray 'nVertLevels' (nVertLevels: 100)>
dask.array<output/..., shape=(100,), dtype=int64, chunksize=(100,)>
Coordinates:
  * nVertLevels  (nVertLevels) int64 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ...

In [4]: ds.nVertLevels.values
Out[4]:
array([ 0,  1,  2,  3,  4,  5,  6,  7,  8,  9, 10, 11, 12, 13, 14, 15, 16,
       17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33,
       34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50,
       51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67,
       68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84,
       85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99])

@milenaveneziani, note that if you are slicing based on an index use iselvals and if on actual values, e.g., a particular time, use selvals.

@pwolfram: it worked for me too.

I'm merging in a bit if there are no objections


fix(lexical-playground): LexicalTypeaheadMenuPlugin import

Use the correct import path that available in NPM package

Thanks @elv1n!


Just installed and spotted something odd

https://github.com/michaelnny/deep_rl_zoo/blob/17c4efe5bc7391fe65a2ea785f74c8c539782f74/deep_rl_zoo/gym_env.py#L228
I'm not sure if the else should be here? It seems like then obs would end up undefined on the next line where you do obs.copy()?

As mentioned at the header, the code related to Atari environment preprocessing is copied from OpenAI's baseline, we've only made small changes (like Doc Strings, change function/class names). You might get better answer from there.
https://github.com/openai/baselines/blob/master/baselines/common/atari_wrappers.py

IMO, there might be a real mistake in the adapted code.
In baseline's code, the argument is named as obs:
https://github.com/openai/baselines/blob/ea25b9e8b234e6ee1bca43083f8f3cf974143998/baselines/common/atari_wrappers.py#L166
and then this obs is used in the else branch:
https://github.com/openai/baselines/blob/ea25b9e8b234e6ee1bca43083f8f3cf974143998/baselines/common/atari_wrappers.py#L183
In this repo, however, the argument is renamed into observation:
https://github.com/michaelnny/deep_rl_zoo/blob/ab3035134daa4e6f2d57758bd8a3a7e48bea5b53/deep_rl_zoo/gym_env.py#L211
but the reference to it is not updated accordingly, which might be the source of confusion:
https://github.com/michaelnny/deep_rl_zoo/blob/ab3035134daa4e6f2d57758bd8a3a7e48bea5b53/deep_rl_zoo/gym_env.py#L229
and a simple fix might be obs = observation.copy().
There might be something I failed to notice, so please correct me if I am wrong.

Hi,
If you look closely in the original implementation from the below link, you'll see that they never set the dict_space_key when using the WarpFrame wrapper. The same is true in our code.
https://github.com/openai/baselines/blob/ea25b9e8b234e6ee1bca43083f8f3cf974143998/baselines/common/atari_wrappers.py#L275-L290
So this means the block which is causing your concern was never executed. I guess this is the kind of downside of copying and adapting other people's code where we don't have proper documentation to describe what they're doing. We might need to remove all these blocks to avoid further confusion.


CK group forward convolution integration

Integrate the latest ck group forward convolution into miopen

@DrizztDoUrden and @averinevg  Can we give this PR a second look before we merge it?

@iq136boy could you help to resolve the conflict?

I restarted CI process for this PR

@JehandadKhan and @junliume CI passed.


Improve Twitter icon

Current Twitter icon is rather crispy 1, so I changed the code to version from jekyll/minima project 2.
Note: it is a little bit smaller (which is unnoticeable without direct comparison 3), so if it is not OK, feel free to close this pull request and change it yourself.

Great, thanks a lot! Asked @ilyabirman for the feedback.

Added this, thanks!


WIP: New introspector situational config integration test

This change is adding testing for cluster channels by adding a custom WLS channel to the cluster server template in the create domain WLST. This custom channel is picked up as part of the larger lifecycle tests as the domain is restarted. After the domain is restarted we check that the channel is present as a service in k8s.

Describe the use cases this PR is testing.

Can you explain how you are verifying all the custom overrides you have in the custom config.xml?

@vanajamukkara I am not verifying that yet, at this point I have the test running, but I am having trouble checking the overrides and open ports

The scope of this test should only be about making sure that network-access-points are exposed as services on configured and dynamic clusters.
There's no need to create custom sit-cfg for this purpose.    Pretty much all custom sit-cfg is already tested, and teh current custom sit-cfg overrides in this test look suspect (for example, they override stuff that is not supported for overrides).
It should be possible to find two existing test domains and re-use them (one configured and one dynamic) and then (A) add network-access-point(s) to its cluster's config, (B) add a test that confirms there's a 'cluster' service that has the expected port from the NAP, and (C) exercises this port in some fashion (call curl on the test web app on the cluster directly from the admin server pod to the cluster pod for example -- or set up a load balancer).   There are already tests that perform B & C, so you should be able re-use code from these tests - perhaps just by directly calling their helper functions.   Also, you can 'piggyback' the new checks on an existing test for the domain that assumes the domain is already up and running.

@tbarnes-us Sure, I can take out this test and try to fold it into one of the existing tests. I have to go back to the test suite then and try to figure out how to re-approach this.

@tbarnes-us @vanajamukkara I completely rewrote this to integrate the channels test with the existing tests. I added a NAP port to the cluster server template. Then I check for this channel in the testDomainLifecyle test, which relies on a domain restart, at which point the introspector picks up the channel and creates it.

@tbarnes-us Thank you for your review. Regarding the curl test of the port, yes I definitely remember us talking about that. Since I have been on JCS primary call all week this week, I haven't been able to get there yet.

@vanajamukkara Sure. That is definitely on my list of todos, right now I am trying to debug why the integration tests suite is failing on wercker.

@jgrundback please run the tests on Jenkins once.

@vanajamukkara Sure! I ran it on jenkins last week, but I can do so again.

I checked jenkins run, its failing only for the wldf scaling issue for which there is a jira. Otherwise LG.

@vanajamukkara Thank you!


Use optional/required etag, when available, in Delete method tests

AIP-135 talks about Protected Delete, which entails requiring etag in the proto.
However, the tests for the Delete method does not take etag into account right now. We aim to fix this and is internally tracked as TRA-1554.
Note: there is a conflicting bug in googleapis/api-linter for this currently: https://github.com/googleapis/api-linter/issues/1395

@fredrikaverpil can this be closed now since we have tests takes the etag into account?
https://github.com/einride/protoc-gen-go-aip-test/blob/master/internal/aiptest/deletion/etag.go


Simplify async .rejects examples

The docs state that "If the promise is fulfilled, the test will automatically fail", so it is not necessary to include the expect.assertions(1) calls since the tests will fail automatically if the promise doesn't reject.

Summary

Test plan

Codecov Report

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

@@          Coverage Diff           @@
##           master   #8965   +/-   ##
======================================
  Coverage    64.2%   64.2%
======================================
  Files         276     276
  Lines       11718   11718
  Branches     2868    2868
======================================
  Hits         7523    7523
  Misses       3563    3563
  Partials      632     632

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 1693028...19782da. Read the comment docs.

Thanks for bringing this up. In my opinion, it is still a good idea and should be recommended to use expect.assertions as a safeguard once async things are involved, because it is easy to forget to return/await the expect.resolves.

That’s true, it would protect against forgetting to return the promise. However, for this example in particular, it made me question whether rejects actually fails when the Promise resolves okay.
Maybe it would be better to update the text to say that expect.assertions is recommended for that reason, but not required for the test to work?

Yeah, mentioning that it is recommended to prevent the common mistake of forgetting to await / return the expect.resolves sounds good to me!

Please update the versioned docs as well when incorporating @jeysal's feedback 🙂

Looks like https://github.com/facebook/jest/pull/9149 was merged in which addresses this PR!


Bug: does not provide an export named 'FormifyInput'

Hello
I directly copied and pasted the code from the Error doc page and it gave the following error.
Code:
<script lang="ts" setup>
import { FormifyForm, FormifyInput, Error, FormType } from 'vue-formify';

const form = ref<FormType>();

const sendForm = (data) => {
    if (!data.email.length) {
        form.value?.setError('email', 'Email required!');
    }
};

</script>
<template>
	<FormifyForm @submit="sendForm">
		<FormifyInput name="email" />
		<Error error-for="email" />
		<button>Send</button>
	</FormifyForm>
</template>

Error:
Uncaught SyntaxError: The requested module '/node_modules/.vite/deps/vue-formify.js?v=3bee7da9' does not provide an export named 'FormifyInput' (at App.vue:2:47)

This component does not appear in the main.ts file of the package. I think the doc page needs to be corrected.
import { FormType, ComponentProps } from './index';
import { createInput } from '@/composable/createInput';
import { useForm, Form, Field, FieldArray, Error } from '@/composable/useForm';

export {
	createInput,
	Form as FormifyForm,
	Form,
	Error,
	FieldArray,
	Field,
	useForm,
};

export type {
	FormType,
	ComponentProps,
};

@mateenagy

Hi @ogzcode
Yes you are right, I forgot to change the imports in the docs. The FormifyInput was a component in the previous version but it's removed since v1 and now you need to use Field. I fixed it in the documentation.
Nice catch and thank you.


[evm] make evm features non-default(#57)_26

Motivation
This makes the EVM features non-default so that one doesn't have to install the ethereum toolchain if one doesn't need it
Have you read the Contributing Guidelines on pull requests?
Yes
Test Plan
CI/CD tests are covered.

/canary

:broken_heart: Test Failed - ci-test

/canary

:broken_heart: Test Failed - ci-test

/canary

:sunny: Canary successful

/land


ENH: Adding Test for Array PixelType in Mesh Wrapping

Added test in Python to demonstrate the usage of Array PixelType in Mesh.
Usage of Array allows to change the size of pixeldata as per requirements later.
Using Array, however breaks the API support for SetElement and SetPointData in PointSet.
The only way to alter the data is through reference and for that CreateElementAt method is
used in the VectorContainer.

PR Checklist

[X] Added test (or behavior not changed)

Refer to the ITK Software Guide for
further development details if necessary.

This (itkMeshBase: warning(4): ITK type not wrapped, or currently not known: itk::VectorContainer< unsigned long long, itk::CellInterface< itk::Array< double >, itk::CellTraitsInfo< 2, float, float, unsigned long long, unsigned long long, unsigned long long, itk::Point< float, 2 >, itk::VectorContainer< unsigned long long, itk::Point< float, 2 > >, std::set< unsigned long long, std::less< unsigned long long > > > > * >) is probably the source of this failure:
Traceback (most recent call last):
  File "D:\a\1\s-build\Wrapping\Generators\Python\itk\support\template_class.py", line 525, in __getitem__
    this_item = self.__template__[key]
KeyError: (<itkCType unsigned long>, <class 'itk.itkArrayPython.itkArrayD'>)
...

Can you follow up Pranjal?

Checking the issue !

Please Check PR https://github.com/InsightSoftwareConsortium/ITK/pull/2970


bugfix: 关联业务相关问题修复

Codecov Report

Merging #314 (65ad74f) into v2.6.x_develop (de309f4) will increase coverage by 0.01%.
The diff coverage is 0.00%.

:exclamation: Current head 65ad74f differs from pull request most recent head 9f63ad5. Consider uploading reports for the commit 9f63ad5 to get more accurate results

@@                Coverage Diff                 @@
##           v2.6.x_develop     #314      +/-   ##
==================================================
+ Coverage           60.85%   60.87%   +0.01%
==================================================
  Files                 442      441       -1
  Lines               26773    26788      +15
==================================================
+ Hits                16294    16307      +13
- Misses              10479    10481       +2

Impacted Files
Coverage Δ

itsm/workflow/serializers/field.py
67.03% <0.00%> (ø)

error_pages/views.py
60.00% <0.00%> (-10.00%)
:arrow_down:

itsm/component/generics.py
67.44% <0.00%> (-9.31%)
:arrow_down:

itsm/ticket/models/misc.py
85.71% <0.00%> (-2.86%)
:arrow_down:

itsm/openapi/ticket/views.py
45.54% <0.00%> (-1.29%)
:arrow_down:

itsm/ticket/views/ticket.py
46.62% <0.00%> (-0.68%)
:arrow_down:

itsm/component/constants/flow.py
100.00% <0.00%> (ø)

weixin/core/context_processors.py

itsm/ticket/models/ticket.py
56.61% <0.00%> (+0.21%)
:arrow_up:

itsm/openapi/ticket/serializers.py
80.70% <0.00%> (+0.70%)
:arrow_up:

... and 4 more

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 de309f4...9f63ad5. Read the comment docs.


[DOCS] String

@cbscribe Fixed, don't know why it doesn't show line 375 as fixed, but it is. :)

Thanks for your effort!


Building Index WGBS Error

Hello,
I am trying to use BS Seeker 2 to make an index of the Bovine Reference Genome for later alignment with WGBS data.
I ran the code:
python bs_seeker2-build.py -f ~/reference/file/location --aligner=bowtie2 -d ~/output/file/location
I got the error:
Traceback (most recent call last):
File "bs_seeker2-build.py", line 5, in ,module. from bs_index.wg_build import *
ImportError: No module names bs_index.wg_build
I had my university core download BS Seeker2 and Bowtie2 to the server I am using. I have also downloaded the bs_seeker2-build.py, bs_seeker2-align.py, and bs_seeker2-call_methylation.py files from here. Are there other files that I or the university core need to download?
I was also assuming the .py files were meant to run as is so I did not modify them any except save them in a .txt and then change the file name to .py before transferring it to the server.
Also do I need to unzip the reference genome from fa.gz to make it fa or will it run as a fa.gz?
Thank you,
Bonnie

Hi Bonnie,
Acturally, you need to download BS-Seeker2 from the homepage: https://github.com/BSSeeker/BSseeker2 . There are other scripts in the packages are needed.
For your second question, I suggest you unzip the .fa.gz to .fa file, and then build the genome
Best,
Weilong
At 2017-11-10 10:57:01, "bacantre"<EMAIL_ADDRESS>wrote:
Hello,
I am trying to use BS Seeker 2 to make an index of the Bovine Reference Genome for later alignment with WGBS data.
I ran the code:
python bs_seeker2-build.py -f ~/reference/file/location --aligner=bowtie2 -d ~/output/file/location
I got the error:
Traceback (most recent call last):
File "bs_seeker2-build.py", line 5, in ,module. from bs_index.wg_build import *
ImportError: No module names bs_index.wg_build
I had my university core download BS Seeker2 and Bowtie2 to the server I am using. I have also downloaded the bs_seeker2-build.py, bs_seeker2-align.py, and bs_seeker2-call_methylation.py files from here. Are there other files that I or the university core need to download?
I was also assuming the .py files were meant to run as is so I did not modify them any except save them in a .txt and then change the file name to .py before transferring it to the server.
Also do I need to unzip the reference genome from fa.gz to make it fa or will it run as a fa.gz?
Thank you,
Bonnie
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or mute the thread.

Hello Weilong,
I have been in contact with my university and am trying to figure out what went wrong with the download of this. I ended up copying over this entire download and unzipped it. I then ran this code and got back this error:
python bs_seeker2-build.py -f UMD3.1_chromosomes.fa --aligner=bowtie2 -d ~/WGBS_Bovine_Brain/reference/
 BS-Seeker2 v2.1.3 - Oct. 25, 2017

Traceback (most recent call last):
File "bs_seeker2-build.py", line 56, in
if os.path.isfile(os.path.join(os.dbpath, fasta_file)):
AttributeError: 'module' object has no attribute 'dbpath'
I have the unzipped file located in ~/WGBS_Bovine_Brain/reference/ and am running this code within the BSseeker2-master folder so that I am running the code in the same location as the bs_seeker2-build.py. I unzipped the reference genome (UMD3.1_chromosomes.fa from UMD3.1_chromosomes.fa.gz, but zcat left the .gz so I just removed it in WinSCP, I am not actually sure if this is a proper way to unzip it and if that is my problem).
Do you know what I am doing wrong? Is there any recommendations for what I need to tell my University to make sure this is uploaded correctly if it is something on their end?
Thank you,
Bonnie
From: Weilong Guo<EMAIL_ADDRESS>Sent: Thursday, November 9, 2017 10:04 PM
To: BSSeeker/BSseeker2<EMAIL_ADDRESS>Cc: Bonnie Cantrell<EMAIL_ADDRESS>Author<EMAIL_ADDRESS>Subject: Re: [BSSeeker/BSseeker2] Building Index WGBS Error (#16)
Hi Bonnie,
Acturally, you need to download BS-Seeker2 from the homepage: https://github.com/BSSeeker/BSseeker2 . There are other scripts in the packages are needed.
For your second question, I suggest you unzip the .fa.gz to .fa file, and then build the genome
Best,
Weilong
At 2017-11-10 10:57:01, "bacantre" <notifications<EMAIL_ADDRESS>wrote:
Hello,
I am trying to use BS Seeker 2 to make an index of the Bovine Reference Genome for later alignment with WGBS data.
I ran the code:
python bs_seeker2-build.py -f ~/reference/file/location --aligner=bowtie2 -d ~/output/file/location
I got the error:
Traceback (most recent call last):
File "bs_seeker2-build.py", line 5, in ,module. from bs_index.wg_build import *
ImportError: No module names bs_index.wg_build
I had my university core download BS Seeker2 and Bowtie2 to the server I am using. I have also downloaded the bs_seeker2-build.py, bs_seeker2-align.py, and bs_seeker2-call_methylation.py files from here. Are there other files that I or the university core need to download?
I was also assuming the .py files were meant to run as is so I did not modify them any except save them in a .txt and then change the file name to .py before transferring it to the server.
Also do I need to unzip the reference genome from fa.gz to make it fa or will it run as a fa.gz?
Thank you,
Bonnie
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or mute the thread.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://github.com/BSSeeker/BSseeker2/issues/16#issuecomment-343361721, or mute the threadhttps://github.com/notifications/unsubscribe-auth/Af-0TTKh_EzFQoBhpIjCkEviM5FjNrpOks5s070HgaJpZM4QZAGV.

Thanks for reporting this error message. It was a bug, but rare reported. Now it has been fixed in v2.1.5.
And I guess you may not give the right path for genome.fa. -d is to specific where to store the index directory. If you want to specify the path for genome.fa, you can use "-f <path_to_folder>/genome.fa".
Best,
Weilong

Hello Weilong,
Thank you for all of your help and for fixing this.
I tried to rerun the code again with the new version and got a little farther in the code, but am still receiving errors. This is what I got. It seems like it might be a problem with my reference genome file. Do you know from this error what I am doing wrong?
 Please, make sure that all sequence ids are unique and contain only alphanumeric characters: A-Za-z0-9
Thank you,
Bonnie
From: Weilong Guo<EMAIL_ADDRESS>Sent: Thursday, November 9, 2017 10:04 PM
To: BSSeeker/BSseeker2<EMAIL_ADDRESS>Cc: Bonnie Cantrell<EMAIL_ADDRESS>Author<EMAIL_ADDRESS>Subject: Re: [BSSeeker/BSseeker2] Building Index WGBS Error (#16)
Hi Bonnie,
Acturally, you need to download BS-Seeker2 from the homepage: https://github.com/BSSeeker/BSseeker2 . There are other scripts in the packages are needed.
For your second question, I suggest you unzip the .fa.gz to .fa file, and then build the genome
Best,
Weilong
At 2017-11-10 10:57:01, "bacantre" <notifications<EMAIL_ADDRESS>wrote:
Hello,
I am trying to use BS Seeker 2 to make an index of the Bovine Reference Genome for later alignment with WGBS data.
I ran the code:
python bs_seeker2-build.py -f ~/reference/file/location --aligner=bowtie2 -d ~/output/file/location
I got the error:
Traceback (most recent call last):
File "bs_seeker2-build.py", line 5, in ,module. from bs_index.wg_build import *
ImportError: No module names bs_index.wg_build
I had my university core download BS Seeker2 and Bowtie2 to the server I am using. I have also downloaded the bs_seeker2-build.py, bs_seeker2-align.py, and bs_seeker2-call_methylation.py files from here. Are there other files that I or the university core need to download?
I was also assuming the .py files were meant to run as is so I did not modify them any except save them in a .txt and then change the file name to .py before transferring it to the server.
Also do I need to unzip the reference genome from fa.gz to make it fa or will it run as a fa.gz?
Thank you,
Bonnie
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or mute the thread.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://github.com/BSSeeker/BSseeker2/issues/16#issuecomment-343361721, or mute the threadhttps://github.com/notifications/unsubscribe-auth/Af-0TTKh_EzFQoBhpIjCkEviM5FjNrpOks5s070HgaJpZM4QZAGV.

@bacantre
The error message said:
Is your input genome file : /users/ b/a/bacantre/WGBS_Bovine_Brain/reference/UMD3.1_chromosomes.fa a TXT file or a binary file?
It should be TXT file.
And do you really have a chromosome or contig name as "8__fO_" ? You can double check if you specific right genome file.
Best,
Weilong

Hello Weilong,
Happy holidays. I decided to download a different reference genome format and then re-installed it appropriately. This allowed me to run the code:
python bs_seeker2-build.py -f ~/WGBS/reference/referenceUMD3.1.1.fa –aligner=bowtie2 -d ~/WGBS/reference/
I then got a folder named referenceUMD3.1.1.fa_bowtie2 that contains .data files .bt2 files and .log files.
This all seemed to work correctly.
When I went to do the alignment, it all went wrong again. I ran the code and got the error below:
python bs_seeker2-align.py -1 ~/WGBS/fastQfiles/D2239Amy_1.fq -2 ~/WGBS/fastQfiles/D2239Amy_2.fq --aligner=bowtie2 -o ~/WGBS/alignment/D2239Amy.bam -f bam -g ~/WGBS/reference/referenceUMD3.1.1.fa
 BS-Seeker2 v2.1.5 - Dec. 21, 2017

ERROR: Index DIR "referenceUMD3.1.1.fa.." cannot be found in /gpfs1/home/b/a/bacantre/WGBS/reference/BSseeker2-master/bs_utils/reference_genomes.
Please run the bs_seeker2-build.py to create it with the correct parameters for -g, -r, --low, --up and --aligner.
It seems like it wants the reference_genomes to a directory folder, but it creates this as a file in bs_utils. I have tried to make a directory called reference_genomes, but get an error because a file is already named it. I have also tried moving the index directory (referenceUMD3.1.1.fa_bowtie2) and reference genome  to bs_utils directory that I put in WGBS/reference.
I also tried redoing the build below without specifying a -d, but got this error:
python bs_seeker2-build.py -f ~/WGBS/reference/referenceUMD3.1.1.fa --aligner=bowtie2
 BS-Seeker2 v2.1.5 - Dec. 21, 2017

Reference genome file: /users/b/a/bacantre/WGBS_Bovine_Brain/reference/referenceUMD3.1.1.fa
Reduced Representation Bisulfite Sequencing: False
Short reads aligner you are using: bowtie2
Builder path: /gpfs1/arch/spack-20170803/opt/spack/linux-rhel7-x86_64/gcc-5.4.0/bowtie2-2.2.5-ojakqj7byt2zuj6hn2d5ezuopyhudm5d/bin/bowtie2-build
ERROR: /gpfs1/home/b/a/bacantre/WGBS/reference/BSseeker2-master/bs_utils/reference_genomes must be a directory. Please, delete it or change the -d option.
What am I doing wrong? Is there a specific location the builds are suppose to be sent to? Was getting the reference_genomes as a text file in bs_utils correct for running the build code?
Additionally:
I originally tried this with also adding a -d ~/WGBS/reference/referenceUMD3.1.1.fa_bowtie2 to indicate the index, but got the same error for reference location either way. I originally thought it was the index file, so I took out using -d
Do I need to reference the index folder? Your examples just use the -g, so I stuck with that to keep it simple.
Thank you,
Bonnie
From: Weilong Guo<EMAIL_ADDRESS>Sent: Thursday, December 21, 2017 6:24 PM
To: BSSeeker/BSseeker2<EMAIL_ADDRESS>Cc: Bonnie Cantrell<EMAIL_ADDRESS>Mention<EMAIL_ADDRESS>Subject: Re: [BSSeeker/BSseeker2] Building Index WGBS Error (#16)
@bacantrehttps://github.com/bacantre
The error message said:
Is your input genome file : /users/ b/a/bacantre/WGBS_Bovine_Brain/reference/UMD3.1_chromosomes.fa a TXT file or a binary file?
It should be TXT file.
And do you really have a chromosome or contig name as "8__fO_" ? You can double check if you specific right genome file.
Best,
Weilong
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/BSSeeker/BSseeker2/issues/16#issuecomment-353482816, or mute the threadhttps://github.com/notifications/unsubscribe-auth/Af-0TdnTqPHLifrC6XQ1K_UhMF-KyK2Pks5tCuiegaJpZM4QZAGV.

Hi @bacantre ,
As you built the index using the following command:
python bs_seeker2-build.py -f ~/WGBS/reference/referenceUMD3.1.1.fa –aligner=bowtie2 -d ~/WGBS/reference/
Then you need to specifying the folder in following way
python bs_seeker2-align.py -1 ~/WGBS/fastQfiles/D2239Amy_1.fq -2 ~/WGBS/fastQfiles/D2239Amy_2.fq --aligner=bowtie2 -o ~/WGBS/alignment/D2239Amy.bam -f bam -g referenceUMD3.1.1.fa -d ~/WGBS/reference/
Please note that, for bs_seeker2-align.py,

parameter "-g" should specify the genome file name, without the path
parameter "-d" should specify the parental directory where you created the index folder, without the index folder name

Let me know if it still not works.
Best，
Weilong

I am having a related issue trying to use BSseeker2 to map PE reads of WGBS to the reference tomato genome (AEKE03.fasta). I did not indicate a specific path with the -d option but used the default for the index with this command:
[clr@rra-login1 BSseeker2-master]$ python bs_seeker2-build.py -f AEKE03.fasta --aligner bowtie2
Which resulted in a directory full of .data files:
C_C2T.1.bt2
ENA_AEKE03000623_AEKE03000623.1.data
ENA_AEKE03001259_AEKE03001259.1.data
ENA_AEKE03001895_AEKE03001895.1.data
ENA_AEKE03002531_AEKE03002531.1.data
C_C2T.2.bt2
ENA_AEKE03000624_AEKE03000624.1.data
ENA_AEKE03001260_AEKE03001260.1.data
ENA_AEKE03001896_AEKE03001896.1.data
ENA_AEKE03002532_AEKE03002532.1.data
C_C2T.3.bt2
ENA_AEKE03000625_AEKE03000625.1.data
etc
and  then ran for PE conversion to single end mode:
[clr@rra-login0 BSseeker2-master]$ python bs_seeker2-align.py -1 10_P_1.fq  -2 10_P_2.fq -g AEKE03.fasta -o 10_P.bam -u unmapped
got the error for pysam:
[Error] It seems that you haven't install "pysam" package..
We installed it with:
[clr@rra-login0 BSseeker2-master]$ module load apps/python/2.7.15-el7
[clr@rra-login0 BSseeker2-master]$ pip freeze | grep pysam
then ran:
[clr@rra-login0 BSseeker2-master]$ python bs_seeker2-align.py -1 10_P_1.fq  -2 10_P_2.fq -g AEKE03.fasta -o 10_P.bam -u unmapped
and got this error:
 BS-Seeker2 v2.1.8 - Oct. 30, 2018

ERROR: Index DIR "AEKE03.fasta.." cannot be found in /shares/pi_clr/BSSeeker/BSseeker2-master/bs_utils/reference_genomes.
Please run the bs_seeker2-build.py to create it with the correct parameters for -g, -r, --low, --up and --aligner.
Does it need  -r --low or --up fro WGBS? Or do I need to modify the way that the index is built for PE?

As you use "--aligner bowtie2" for buiding the index, you need alto to use "--aligner=bowtie2" for the alignment step.
By default, bs_seeker2-align.py will use "bowtie" rather than "bowtie2" for alignment.
Best,
Weilong

I may have solved this error by "adding" bowtie2 again since it read (on line 6):
[2019-08-23 09:50:15] Aligner command: None/Bowtie2...
now that line says:
[2019-08-23 12:50:12] Aligner command: /apps/bowtie/<IP_ADDRESS>/bin/bowtie2...
I had run [clr@rra-login1 ~]$ module add apps/bowtie/<IP_ADDRESS> to create the index, but I guess I have to re-add it for each session?
Now its reading:
[2019-08-23 12:52:49] Starting commands:
[2019-08-23 12:52:49] Launched: /apps/bowtie/<IP_ADDRESS>/bin/bowtie2 --local --quiet -D 50 --no-mixed --norc --sam-nohead --no-discordant -k 2 -p 2 -X 500 --fr  -x /shares/pi_clr/BSSeeker/BSseeker2-master/bs_utils/reference_genomes/AEKE03.fasta_bowtie2/W_C2T  -f -1 /tmp/bs_seeker2_10_P.bam_-bowtie2-local-TMP-a1eCZi/Trimed_FCT_1.fa.tmp-8477077 -2 /tmp/bs_seeker2_10_P.bam_-bowtie2-local-TMP-a1eCZi/Trimed_RGA_2.fa.tmp-8477077 -S /tmp/bs_seeker2_10_P.bam_-bowtie2-local-TMP-a1eCZi/W_C2T_fr_m4.mapping.tmp-8477077
[2019-08-23 12:52:49] Launched: /apps/bowtie/<IP_ADDRESS>/bin/bowtie2 --local --quiet -D 50 --no-mixed --norc --sam-nohead --no-discordant -k 2 -p 2 -X 500 --fr  -x /shares/pi_clr/BSSeeker/BSseeker2-master/bs_utils/reference_genomes/AEKE03.fasta_bowtie2/C_C2T  -f -1 /tmp/bs_seeker2_10_P.bam_-bowtie2-local-TMP-a1eCZi/Trimed_FCT_1.fa.tmp-8477077 -2 /tmp/bs_seeker2_10_P.bam_-bowtie2-local-TMP-a1eCZi/Trimed_RGA_2.fa.tmp-8477077 -S /tmp/bs_seeker2_10_P.bam_-bowtie2-local-TMP-a1eCZi/C_C2T_fr_m4.mapping.tmp-8477077

Hi again!
It went this far but I'm not sure it was finished?
[2019-08-23 12:52:49] Launched: /apps/bowtie/<IP_ADDRESS>/bin/bowtie2 --local --quiet -D 50 --no-mixed --norc --sam-nohead --no-discordant -k 2 -p 2 -X 500 --fr  -x /shares/pi_clr/BSSeeker/BSseeker2-master/bs_utils/reference_genomes/AEKE03.fasta_bowtie2/W_C2T  -f -1 /tmp/bs_seeker2_10_P.bam_-bowtie2-local-TMP-a1eCZi/Trimed_FCT_1.fa.tmp-8477077 -2 /tmp/bs_seeker2_10_P.bam_-bowtie2-local-TMP-a1eCZi/Trimed_RGA_2.fa.tmp-8477077 -S /tmp/bs_seeker2_10_P.bam_-bowtie2-local-TMP-a1eCZi/W_C2T_fr_m4.mapping.tmp-8477077
[2019-08-23 12:52:49] Launched: /apps/bowtie/<IP_ADDRESS>/bin/bowtie2 --local --quiet -D 50 --no-mixed --norc --sam-nohead --no-discordant -k 2 -p 2 -X 500 --fr  -x /shares/pi_clr/BSSeeker/BSseeker2-master/bs_utils/reference_genomes/AEKE03.fasta_bowtie2/C_C2T  -f -1 /tmp/bs_seeker2_10_P.bam_-bowtie2-local-TMP-a1eCZi/Trimed_FCT_1.fa.tmp-8477077 -2 /tmp/bs_seeker2_10_P.bam_-bowtie2-local-TMP-a1eCZi/Trimed_RGA_2.fa.tmp-8477077 -S /tmp/bs_seeker2_10_P.bam_-bowtie2-local-TMP-a1eCZi/C_C2T_fr_m4.mapping.tmp-8477077
[2019-08-23 13:00:20] Finished: /apps/bowtie/<IP_ADDRESS>/bin/bowtie2 --local --quiet -D 50 --no-mixed --norc --sam-nohead --no-discordant -k 2 -p 2 -X 500 --fr  -x /shares/pi_clr/BSSeeker/BSseeker2-master/bs_utils/reference_genomes/AEKE03.fasta_bowtie2/W_C2T  -f -1 /tmp/bs_seeker2_10_P.bam_-bowtie2-local-TMP-a1eCZi/Trimed_FCT_1.fa.tmp-8477077 -2 /tmp/bs_seeker2_10_P.bam_-bowtie2-local-TMP-a1eCZi/Trimed_RGA_2.fa.tmp-8477077 -S /tmp/bs_seeker2_10_P.bam_-bowtie2-local-TMP-a1eCZi/W_C2T_fr_m4.mapping.tmp-8477077
[2019-08-23 13:00:20] Finished: /apps/bowtie/<IP_ADDRESS>/bin/bowtie2 --local --quiet -D 50 --no-mixed --norc --sam-nohead --no-discordant -k 2 -p 2 -X 500 --fr  -x /shares/pi_clr/BSSeeker/BSseeker2-master/bs_utils/reference_genomes/AEKE03.fasta_bowtie2/C_C2T  -f -1 /tmp/bs_seeker2_10_P.bam_-bowtie2-local-TMP-a1eCZi/Trimed_FCT_1.fa.tmp-8477077 -2 /tmp/bs_seeker2_10_P.bam_-bowtie2-local-TMP-a1eCZi/Trimed_RGA_2.fa.tmp-8477077 -S /tmp/bs_seeker2_10_P.bam_-bowtie2-local-TMP-a1eCZi/C_C2T_fr_m4.mapping.tmp-8477077

Hi @christinalrichards ,
Sorry for the late reply, as I might have missed this message in email.
It takes some time to run if you have lots of data.
Here are some suggestions for improving the performance:
https://github.com/BSSeeker/BSseeker2#1-performance
Best,
Weilong


chore: Use GH Checks API for manual e2e tests

Signed-off-by: Jorge Turrado<EMAIL_ADDRESS>
Instead of using labels/emojis for the e2e on PR, this PR updates the workflow to use Github's check API. The main changes are:

Instead of monitoring labels, a pull_request_target trigger creates an  empty check on every new commit in queued status
The e2e workflow updates the check created by the previous step, setting the status to in-progress when we start to build the image and setting to complated + success/failure at the end of the e2e execution.
The new label to skip e2e tests is skip-e2e.

You can check how it works just opening a PR to this repository  and commenting /run-e2e in the PR (it doesn't check author permissions, only the command)
NOTE: I have noticed that the test suite seems not idempotent, so there is a possibility of not doing anything if we try to execute more than once e2e tests for the same commit
Checklist

[x] Commits are signed with Developer Certificate of Origin (DCO - learn more)
[x] Tests have been added
[x] A PR is opened to update our Helm chart (repo) (if applicable, ie. when deployment manifests are modified)
[x] A PR is opened to update the documentation on (repo) (if applicable)
[x] Changelog has been updated and is aligned with our changelog requirements

Fixes https://github.com/kedacore/keda/issues/2567

Instead of using labels/emojis for the e2e on PR, this PR updates the workflow to use Github's check API. The main changes are:

Instead of monitoring labels, a pull_request_target trigger creates an  empty check on every new commit in queued status
The e2e workflow updates the check created by the previous step, setting the status to in-progress when we start to build the image and setting to complated + success/failure at the end of the e2e execution.

How do we get it passing if we don't run the tests? Can we override it with a label?

Maybe we should have an additional check where our ok-to-merge label wins regardless of the test running?

Maybe we should have an additional check where our ok-to-merge label wins regardless of the test running?
The workflow would check for changes to labels and do this when it gets an ok-to-merge label and the e2e workflow is allowed to update if tests fail?
- name: Set status success
  uses<EMAIL_ADDRESS>  with:
    token: ${{ secrets.GITHUB_TOKEN }}
    sha: ${{ needs.triage.outputs.commit_sha }}
    name: e2e tests
    conclusion: skipped by maintainer
    details_url: https://github.com/${{github.repository}}/actions/runs/${{github.run_id}}

I like this

WDYT about an extra step in the pull_request_target workflow which just set the CI as passed in case of labeled? Using that, every new commit will be marked as passed.
wrt to the message, I have to dig in it, IDK if it's possible

WDYT about an extra step in the pull_request_target workflow which just set the CI as passed in case of labeled? Using that, every new commit will be marked as passed.

I'm not sure I would label it with ok-to-merge then given I might want to run the e2e tests later on, based on recent changes - Or is this just me?

it can be, skip-e2e for instance

the label to skip e2e in current commit (and future commits in the PR) is skip-e2e

@JorTurFer so we no longer call this label ok-to-merge?

At this point I think that skip-e2e makes more sense, but I'm open to change it.
What do you prefer?

As discussed previously, is ok-to-merge not better given we could add more criteria to it later on that goes beyond e2e?
For example, if the changelog is not done I'd like to block the PR

As discussed previously, is ok-to-merge not better given we could add more criteria to it later on that goes beyond e2e?
For example, if the changelog is not done I'd like to block the PR

Sorry but I'm not getting your point. Do you want to use this check for more things than e2e tests?
I mean, this check is only for e2e tests (at least right now because the check name is e2e-test), if we want we can add more checks for different things, but I wouldn't mix all in one. That's why IMO makes sense to use skip-e2e if we want to just skip e2e tests requirement.

I'd say that it's not possible, for doing complex things we need to keep the checkid stored for updating them properly. Without a real backend, we are a bit limited in what things we can to. For instance, once the check for the commit has finished (it's concluded), we cannot create another check in the same commit with the same name, we have to update it or the change will not be reflected.
let me check if I can get that information on the fly for doing that, but I'm not sure.
For that case, we could just create another different CI that checks for another different label like not-ready or similar. It's more simple because that CI will only check this label, and that's all. We can reach the same behavior (I can add it in this PR also). WDYT?

After dozens of tries (trust me xD), I have discovered how to keep the check alive despite the s***y implementation of checks on GH side.
For achieving this, I have to create one workflow just for creating the check (it must be split to keep the check-run visible because on every execution, the check created on-the-fly is lost), and another workflow which monitors labels and modifies the previously created check. I can all another extra step in this latest CI (label triggers) and just fail in case of existing any label like not-ready or whatever (not modifying the e2e test check, failing the CI triggered with labels).
I think that with it, we can achieve both goals, having a semantic label to skip e2e test (skip-e2e) and also a good way to block  the PR (failing the CI) in case of exiting a label like not-ready, pending-docs, or whatever.
With this approach, once the gap is fixed, you can just remove the label and then, this check will be green so if others (including e2e test check) are green, the PR is mergeable.
Could this fit with your idea?

If both of you are OK, then I am as well.

Thanks a ton!


Please consider facilitating debugging leaked tracers

Dear JAX people, I've been struggling again with a leaked tracer.
The last time I had a leaked tracer, it took me a few days to find it.  This time, it's been a few days and I still can't find the problem.  I don't know how to make progress here.  Debugging leaked tracers is hard because the error happens so far from the problem.
In the code below, I've tried to modify JAX so that it names the tracers to give me an idea of where the tracer is created.  Unfortuantely, it doesn't seem to retain the names probably because tracers are copied around and the name is lost.  Any insight on this would be really helpful.
I realize that tracers are "deep internals" as Matt put it.  I realize you don't want to document them.  Would it be possible to improve the debug messages produced?  Maybe with a flag?
from inspect import signature
from typing import Any, Callable, Union

from functools import wraps, partial
from jax.interpreters.partial_eval import JaxprTracer, Trace
from jax import jit, grad, vjp
from jax.tree_util import tree_map

__all__ = ['set_debug_reprs', 'djit']

def _id_str(obj: Any) -> str:
    id_ = hex(id(obj) & 0xfffff)[-5:]
    if hasattr(obj, '_name'):
        return f'{obj._name}:{id_}'
    return id_

def set_debug_reprs():
    def trace_repr(self: Trace):
        level = f'{self.level}/{self.sublevel}'
        return f'{self.__class__.__name__}({_id_str(self)}:{level})'

    def jaxpr_tracer_repr(self: JaxprTracer):
        trace = self._trace
        trace_id = _id_str(trace)
        return f'Tracer<{trace_id}::{_id_str(self)}>'

    Trace.__repr__ = trace_repr
    JaxprTracer.__repr__ = jaxpr_tracer_repr

def name_tracer(function_name, argument_name, tracer):
    if not isinstance(tracer, JaxprTracer):
        return tracer
    tracer._name = argument_name
    tracer._trace._name = function_name
    print(tracer)
    return tracer

def function_name(fun: Callable) -> str:
    if hasattr(fun, '__name__'):
        return fun.__name__
    if hasattr(fun, 'func'):
        return function_name(fun.func)
    return "NAMELESS"

def name_all_tracers(fun):
    s = signature(fun)
    @wraps(fun)
    def new_fun(*args, **kwargs):
        bound_arguments = s.bind(*args, **kwargs)
        for name, value in bound_arguments.arguments.items():
            tree_map(partial(name_tracer, function_name(fun), name), value)
        return fun(*args, **kwargs)
    return new_fun

def djit(fun: Callable, *args, **kwargs):
    new_fun = name_all_tracers(fun)
    return jit(new_fun, *args, **kwargs)

def dgrad(fun, *args, **kwargs):
    new_fun = name_all_tracers(fun)
    return grad(new_fun, *args, **kwargs)

def dvjp(fun, *args, **kwargs):
    new_fun = name_all_tracers(fun)
    return vjp(new_fun, *args, **kwargs)

When debugging, I call set_debug_reprs() and use the shim:
from jax import *
from .debugging import djit as jit, dgrad as grad, dvjp as vjp

With this, a JaxprTracer now prints out as:
Tracer<find_fixed_point:84220::x_init:87810>

This shows the function name in which it was created find_fixed_point, the parameter name that it corresponds to x_init, and some object id codes for each in case there are duplicate invocations.
It would have been nice to also name the field in case the tracer is part of a PyTree-like object, but that's hard to get unless the PyTree-like object exposes names for its fields like in flax.struct.dataclass that was recently shown to me.  (Perhaps the PyTree registry could optionally accept a third function that produces a tree of strings for naming purposes.)

This is a fantastic idea. We've got to figure something out along these lines, otherwise some classes of errors are going to remain impossibly hard to find and debug.

Woohoo!  Thank you.  Please let me know if you have any ideas on how I can make this actually work as this is what's blocking me full time.  I'm starting to try to figure out JAX's internals to see where the names are lost.

I think we can consider this fixed by jax_check_tracer_leaks. For example:
import jax

jax.config.update("jax_check_tracer_leaks", True)
x = None

@jax.jit
def f(y):
    global x
    x = y
    return y + 2

f(7)

produces
Traceback (most recent call last):
  File "/usr/local/google/home/phawkins/jax/t.py", line 12, in <module>
    f(7)
  File "/usr/local/google/home/phawkins/jax/jax/_src/traceback_util.py", line 162, in reraise_with_filtered_traceback
    return fun(*args, **kwargs)
  File "/usr/local/google/home/phawkins/jax/jax/_src/api.py", line 527, in cache_miss
    out_flat = xla.xla_call(
  File "/usr/local/google/home/phawkins/jax/jax/core.py", line 1937, in bind
    return call_bind(self, fun, *args, **params)
  File "/usr/local/google/home/phawkins/jax/jax/core.py", line 1953, in call_bind
    outs = top_trace.process_call(primitive, fun_, tracers, params)
  File "/usr/local/google/home/phawkins/jax/jax/core.py", line 687, in process_call
    return primitive.impl(f, *tracers, **params)
  File "/usr/local/google/home/phawkins/jax/jax/_src/dispatch.py", line 208, in _xla_call_impl
    compiled_fun = xla_callable(fun, device, backend, name, donated_invars,
  File "/usr/local/google/home/phawkins/jax/jax/linear_util.py", line 295, in memoized_fun
    ans = call(fun, *args)
  File "/usr/local/google/home/phawkins/jax/jax/_src/dispatch.py", line 257, in _xla_callable_uncached
    return lower_xla_callable(fun, device, backend, name, donated_invars, False,
  File "/usr/local/google/home/phawkins/jax/jax/_src/profiler.py", line 294, in wrapper
    return func(*args, **kwargs)
  File "/usr/local/google/home/phawkins/jax/jax/_src/dispatch.py", line 302, in lower_xla_callable
    jaxpr, out_type, consts = pe.trace_to_jaxpr_final2(
  File "/usr/local/google/home/phawkins/jax/jax/_src/profiler.py", line 294, in wrapper
    return func(*args, **kwargs)
  File "/usr/local/google/home/phawkins/jax/jax/interpreters/partial_eval.py", line 2187, in trace_to_jaxpr_final2
    with core.new_sublevel():
  File "/usr/local/google/home/phawkins/.pyenv/versions/3.10.0/lib/python3.10/contextlib.py", line 142, in __exit__
    next(self.gen)
  File "/usr/local/google/home/phawkins/jax/jax/core.py", line 1017, in new_sublevel
    raise leaked_tracer_error("sublevel", t(), leaked_tracers)
jax._src.traceback_util.UnfilteredStackTrace: Exception: Leaked sublevel 1. Leaked tracer(s):

Traced<ShapedArray(int32[], weak_type=True)>with<DynamicJaxprTrace(level=0/1)>
This Tracer was created on line /usr/local/google/home/phawkins/jax/t.py:4 (<module>)

The stack trace below excludes JAX-internal frames.
The preceding is the original exception that occurred, unmodified.

--------------------

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/local/google/home/phawkins/jax/t.py", line 12, in <module>
    f(7)
  File "/usr/local/google/home/phawkins/.pyenv/versions/3.10.0/lib/python3.10/contextlib.py", line 142, in __exit__
    next(self.gen)
Exception: Leaked sublevel 1. Leaked tracer(s):

Traced<ShapedArray(int32[], weak_type=True)>with<DynamicJaxprTrace(level=0/1)>
This Tracer was created on line /usr/local/google/home/phawkins/jax/t.py:4 (<module>)

This is fantastic!  I didn't realize this was even possible.


Broken link to Open Context

Hello!
I happened to notice (via our logs) that there's a broken link to Open Context in this documentation.
https://github.com/sibbr/DarwinCoreBrasil/blob/7d7ee42c53e2877f4e1214123cb6a43f62cd2c80/regras-validacao/regras.md?plain=1#L1927
This resource doesn't exist, and I suspect the Open Context URI/URL got truncated or miscopied at some point because '768A875F-E205-4D0B-DE55-BAB7598D0FD19' is not a valid UUID.
Anyway, I have some background on using Open Context to indicate geospatial context information with DarwinCore, and suspect the example link should be: https://opencontext.org/subjects/e54377f7-4452-4315-b676-40679b10c4d9
or : https://opencontext.org/subjects/b5f813a9-4273-4725-8885-80176be5668e

Thanks, @ekansa! We are mirroring official contents from the TDWG: https://github.com/tdwg/bdq/projects/2
So we have to keep this error for now. Can you please suggest the correct link in this issue (which is the source of the error you reported): https://github.com/tdwg/bdq/issues/40
I'm closing this issue for now. Feel free to reopen if needed.
Thanks again!

Thanks @kguidonimartins for the suggestion and fixing this in your documentation. Here's my issue report to that other repo: https://github.com/tdwg/bdq/issues/294


Problem with connection to my BMW118i

Hello. I have tried to use the App but it always says that I have to Check If I am signed in  in the myBmw App. I have already tried to out of the App and sign in again but it does not fix the Problem.
Down Here you can See that everything should BE fine when I try to connect with my Car (Bluetooth and USB (I dont know whats the Problem there )). Also I am Sorry that it is in German.

PS: I Hope someone could Help me. And I also Hope that you can forgive me for my mistakes in the Text above.

Check your car and make sure your mobile devices connection shows the Apps checkbox, and that MyBMW is successfully checking that box. MyBMW needs permission to connect to local devices and to run in the background in order to successfully connect to the car.


fix: nox.session.run-ing commands with pathlib.Path arguments

Everything previously really worked fine in theory, but the debug string
which is logged (and calls shlex.quote) was blowing up trying
to quote a pathlib.Path object. I'm somewhat surprised upstream
shlex.quote doesn't support pathlib.Path objects (yet?) but for
now this just falls back to a cruder representation.
(Obviously there are other ways to handle this, like calling str() on all the args, let me know if you prefer something else).
This also apparently doesn't work on Windows, but that's because subprocess.Popen is apparently broken with WindowsPaths. The upstream bug is  https://github.com/python/cpython/issues/85815.

I'd think os.fspath(x) if isinstance(x, os.PathLike) for x in args would be the right way to handle it (without introducing bugs if something non-pathlike gets passed in that has a str representation - which everything in Python does).

Happy to do that instead obviously -- do you mean just what I just pushed (I don't think one needs to do the isinstance check, unless you meant to filter out non-fspath args silently, which seems unlikely)?

Actually, I guess it doesn't need a check, since os.fspath passes through str / bytes and only works on os.PathLike otherwise. It just seems a little odd to pass a non-path into os.fspath, and there will be non-paths coming in. It also might be a bit more extendable - if any other object protocols were ever added, you'd then need the check.

FYI, I recently wrote a class that wrapped a commandline tool, and realized I could define __fspath__() instead of making up an arbitrary attribute holding the path to the wrapped exe. Things like this would cause it to just work as if it was the wrapped exe (this is exactly what I did with my own run function). Even without it, os.fspath(thing) is easier to remember than thing.some_name_I_made_up.
But the important thing is the str is different than __fspath__(), and the fspath one is the correct one to use.

Right I've made CLIs that worked precisely as you describe (where they allow lots of fun objects to become filepaths). Certainly supporting more objects would indeed be nice.

Anything else you'd like to see changed from this one?

Thanks!


Should we drop legacy Python?

Python 2 is no longer supported by the Python Development Team.  Should we drop it as well?

I don't know .. it'd be interesting to know the state of Python 3 on the main platforms where Node.js is deployed. Is it universally installed by default now on those? Even CentOS 7 and Ubuntu 16.04?

CentOS 7 ships with an unsafe 2.7.5 which should at a minimum be upgraded to Py2.7.9 for security reasons.  Py3 upgrade is https://linuxize.com/post/how-to-install-python-3-on-centos-7
https://wiki.ubuntu.com/Python Ubuntu 16.04 comes with both Python 2.7 and Python 3.5 by default.

Well, while we're breaking stuff for node-gyp 7 we could certainly bundle this in too. I think I'd defer to you on this choice if you think it's safe enough on common platforms.
Anyone else?

Random internet user here. MacOS still ships with Python 2.7.16. Removing support for Python 2 would require your users to first download and install Python3 in some manner.
I would add that you should follow this guidance specifically, if you aren't already: https://docs.python.org/dev/howto/pyporting.html
That is - aim for Python2/3 compatibility so it works on both:

The Short Explanation
To make your project be single-source Python 2/3 compatible, the basic steps are:

Only worry about supporting Python 2.7
Make sure you have good test coverage (coverage.py can help; python -m pip install coverage)
Learn the differences between Python 2 & 3
Use Futurize (or Modernize) to update your code (e.g. python -m pip install future)
Use Pylint to help make sure you don’t regress on your Python 3 support (python -m pip install pylint)
Use caniusepython3 to find out which of your dependencies are blocking your use of Python 3 (python -m pip install caniusepython3)
Once your dependencies are no longer blocking you, use continuous integration to make sure you stay compatible with Python 2 & 3 (tox can help test against multiple versions of Python; python -m pip install tox)
Consider using optional static type checking to make sure your type usage works in both Python 2 & 3 (e.g. use mypy to check your typing under both Python 2 & Python 3; python -m pip install mypy).

Essentially, you can target Python 3 while making it (mostly) backwards compatible with Python 2.7. Anything older than 2.7 is ancient, hasn't been supported in many years, and should be avoided accordingly.
I'd be very curious to see if any dependencies used in the project aren't already supported by Python3, which is likely the only major blocker you'll have in the process of converting to target py3.  Futurize goes a very long way to getting to python3 support.
The biggest consideration to completely dropping support of Python2 shouldn't necessarily be "is it still actively supported", but rather if the project needs to use features exclusive to Python3 - things like asyncio or dataclasses or any of the newer PEPs.

I think this chart holds some answers: https://gs.statcounter.com/macos-version-market-share/desktop/worldwide
Interestingly it doesn't look like Catalina adoption is slower than previous versions (anecdotally I would have thought it would be!).
You also have to consider the target audience here: almost entirely developers, who are (a) more likely to have the latest of something (although my anecdotes come into play here because I know a lot of devs who still haven't adopted Catalina) and (b) quite capable and not too uncomfortable installing newer versions of dependencies when they're clearly made aware of the need.

And a python 3 compatibility "only" ? Did anyone already try to do that ?

Yes.

I would definitely drop Python 2 as well as old Node versions as mentioned in #1945. It's reasonable to think that those who don't want to upgrade their Python and Node distributions, won't upgrade node-gyp as well anyway

Have we already remove support of python 2? If so, can this issue be closed?

https://github.com/nodejs/node-gyp/pull/2300 dropped support for Python 2.


CHEBI:144353 title/synonyms do not match InChi/formulae

Compare the two entries:
id: CHEBI:144351
name: zinc diethyldithiocarbamate
def: "A dithiocarbamate salt that is the zinc salt of diethyldithiocarbamic acid." []

id: CHEBI:144353
name: diethyldithiocarbamic acid
def: "A member of the class of dithiocarbamic acids that is diethylcarbamic acid in which both of the oxygens are replaced by sulfur." []

The latter entry has the same InChi and formulae as the former but it should not e.g. contain any zinc.

Thanks for letting us know. This has now been corrected.


Implicit Timing

Within the circuit timing section https://qiskit.github.io/openqasm/language/delays.html#delays-and-other-lengthened-instructions, there are instructions such as
length start_stretch = s - .5 * lengthof({x %0;})

Within lengthof, it appears {x %0} is meant to be a box. Should it include the type boxas or should it be assumed that if {} are found as an argument for lengthof it is a box type.

Closing and will open more general issue for timing questions

Closing and will open more general issue for timing questions


require electron-reload ?

Thanks for this repo. As a newcomer to the angular/electron world, this is exactly what I was looking for.
Have you seen https://www.npmjs.com/package/electron-reload ? For me, this adds the last bit of comfort that I was missing with electron when coming from angular web development.

Thanks for suggestion. I will introduce this bit after holidays.

I'll leave this for template users to implement if really needed.


Keyboard disappears when entering data in register page

When clicking on the next field in the Register page, the keyboard disappears. When I click again it appears again. Preferably it wouldn't disappear when clicking to the next field.

Well see if we can improve this. In the mean time, if you press return on your keyboard instead of clicking it should just pop from field to field.

This is indeed a very teeny tiny thing. :-)

I'm open to pull requests ;)


Makefile assumes conda

When running make I get an error for not having conda installed.
Expected Behavior
Either require Anaconda explicitly for building (I would not prefer this) or support a normal python installation.
Current Behavior
I use pipenv for managing my virtual environments and installed & sourced the dependencies. Then I run make and get this message:
make
make: conda: Command not found
if test ; then \
		bash -c "source activate QISKitenv;pip install -r requirements.txt"; \
	else \
		conda create -y -n QISKitenv python=3; \
		bash -c "source activate QISKitenv;pip install -r requirements.txt"; \
	fi;
/bin/sh: conda: command not found

In effect, this probably does not matter since I have already installed the dependencies in an other way.
Possible Solution
Check with pip if the requirements are already included in the environment, and install them only if they are missing.
Add a fallback for normal python.
Steps to Reproduce (for bugs)

Clone qiskit
Run pipenv install --three --dev (a normal python install with venv should also work)
Run pipenv shell
Run make

Context
I am trying to make qiskit so I can contribute changes.
Your Environment

Version used: master branch
Environment name and version (e.g. Python 3.6.1): python 3.6.4
Operating System and version: macOS 10.13

Thanks, @eddieschoute ! As hinted in slack a few days ago, I believe the issue can be attributed to a combination of three separate ones:

the Makefile on the root folder is not meant to be invoked without a target - the make env target (which is the one picked up if invoked without parameters) has fallen a bit out of sync with recent developments, and its original purpose was to be a helper for new users to set up their environment. It is indeed not very robust as it is, and still referenced in the docs, which can be a source of confusion.
there have been / are some changes in regards to the philosophy and the tooling used that might have not been explicitly documented properly. In particular, we have been working towards a clearer separation of "instructions for users" vs "instructions for devs" in the documentation as a whole, and also looking into using cmake instead of make directly as part of some updates to the tooling.
somewhat related to #343 and to the previous point, it feels reasonable to assume that potential contributors will "know their way" around the development environment and have personal preferences about it. Ideally, we should be able to accommodate all those and leave as much choice for the tooling and workflow to the contributor, but there are still remains in that sense (make env can be seen as one of those).

We'll give it a look at the full situation after the upcoming release, and see if we can ensure that these points are reflected and avoid confusion - thanks for raising awareness and for the rationale!

I agree that documentation for users and contributors have different goals. Mainly I feel like there are no clear build instructions for qiskit. Even a quick code snippet with a sequence of commands could help. For me on Mac it is (thanks @atilag ):
cmake -DSTATIC_LINKING=False out
cd out
make pypi_package

then a user may import the built package from dist by untarring it and running pip -e ..
It is definitely harder to engineer for allowing a larger set of development tools, but at the least common denominator still includes the basic build process and dependency management. From there people can use their own tools (such as pipenv or conda).

This seems to have been addressed. @eddieschoute, re-open if you feel something is missing yet.


Update User Properties on Verification

Issue: Update User Properties on Verification
Description
Currently, when users verify themselves, their account properties are not being appropriately updated in our system. To ensure accurate user management, we need to implement changes that set the "archived" property to false and the "in_discord" property to true for users upon successful verification.
Problem
The current verification process does not update user properties, leading to incorrect information in our user database. This can result in challenges when managing user accounts and interactions.
Proposed Solution
Upon successful verification, we need to:

Set the "archived" property to false for users, indicating that their account is active.
Set the "in_discord" property to true, indicating that the user is verified and present in our Discord community.

Benefits

Accurate User Management: Updating user properties post-verification ensures that our database contains up-to-date and accurate user information.
Enhanced Engagement: Identifying users as "in_discord" allows us to tailor engagement and interactions based on their verified status.
Reduced Confusion: Setting "archived" to false clarifies the user's account status and avoids confusion in account management.

Implementation Steps

Modify the verification process to include property updates upon successful verification.
Update the user's "archived" and "in_discord" properties in the backend system.

Related Components

User verification process
User database management

Acceptance Criteria
Upon user verification:

The user's "archived" property is set to false.
The user's "in_discord" property is set to true.
The changes are accurately reflected in the backend user database.
Write text cases and ensure good coverage

Hey @RitikJaiswal75, can you assign me this task?

@iamitprakash Please add 25/08/2023 as ETA. I will try to finish earlier.
Dev - 7-8 days, PR review - 3-4 days, and 2 days buffer.


Feature/1.0.0 beta.2

[x] Add yarn.
[x] Fix tests.
[x] Fix e2e install.
[x] Fix 1.0-rc0 integration.

@kyleledbetter, hi

Hi @merqlove sry, we've been quite busy at our day jobs :P  Thx so much for the PR
@emoralesb05 @richavyas @ilsiepotamus @indyplanets @jeremysmartt can a couple of you code review & test pls?

@kyleledbetter
I reviewed code and tested.
LGTM

merged, thx @merqlove !


Fix a copy&paste error in the TLSv1.3 server side PSK documentation

The introductory paragraph for the TLSv1.3 server side PSK documentation
is a copy & paste of the client side documentation which has not been
updated with the server side equivalent information.

Checklist

[ ] documentation is added or updated
[ ] tests are added or updated

Travis red cross was not relevant. Pushed. Thanks.


differentiate scrappy traffic by requestor

it would be a nice to have to differentiate scrappy by traffic i.e whether the post is for arcade or for other normal usage

resolved since #649


Implement the logic of gathering online friends

The pull requests adds the following:

The methods for fetching lists of friends and online friends.
A complete rewrite of fetch_users_first_name method. Now it's much more generic fetch_user.
make_vk_api_request now uses latest version of VK API.
Improved the way online friends are shown.

Not the workflow I aimed at.


Commonly used com.sun.jndi.ldap into exports

When using javax.naming we commonly use com.sun.jndi.ldap and it should be in add-exports by default

This is related on java 9 above

@tapiiron my point is not about JDK version, it's more the JDK provider, between Adoptium/OpenJDK/Oracle/IBM.


KPDB has duplicate records

based on chat with Capital Planning and Housing teams on 10/18
problem

there are different types of duplicative records
the most significant and impactful is when the record_id is the same across multiple records

e.g. record_id = B00520132 results in 4 rows in the CDTA aggregation output

this is all based on the KPDB build for and shared with the the Capital Planning team

potential causes

clustering logic

KPDB code has clustering logic to identify overlapping source data records and prevent over-counting of housing unit changes

example: 2 ZAP records which overlap but are not the same project may lead to duplication of a DOB record
a cluster: nearby ZAP, HPD, DOB, etc. records that represent the same project

there's a hierarchy of sources to prioritize and select the "truest" records: ZAP < HPD < DOB
a single DOB record may be attributed to 2 clusters, leading to duplication of it

sql query used to get records with duplicative record_id values:
with record_id_counts as
(
	select
		record_id,
		count(*) as records_count
	from kpdb
		group by record_id
		order by records_count desc
),

duplicative_record_id_counts as (
	select * from record_id_counts
	where records_count > 1
)

select * from kpdb
where record_id in (
	select record_id from duplicative_record_id_counts
);

shared a build with Housing and Capital Planning for review

from Housing team:
Below is the first thing we need to check before we start reviewing.

Find a duplicate record that Damon has removed in the newest version.
Check whether the duplicated record's unit count was removed from the cluster total. Example:

There are two instances of a DOB record (job id = 123456789) with 2 units each
123456789 is in a cluster with ZAP record 2017MN123
2017MN123 is a rezoning for a total of 10 units
Do the duplicated DOB records reduce the remaining ZAP record units to 6 (a problem) or 8 (working as intended)?

from inspecting the outputs and mid-build tables today:

when a DOB record is duplicated, it seems to always be because it's assigned to multiple KPDB projects (aka clusters?)
I'm not seeing any duplicated DOB records assigned to the same ZAP project

and after looking for a project with multiple duplicated DOB records, I found:

project_id 1848

has 2 ZAP projects with record_ids P2014R0482, P2015R0073

both have values of unit_gross = 6, units_net = 2

has 2 DOB records with record_ids 520207552, 520207543

both have values of unit_gross = 2, units_net = 2
both are also assigned to other project_ids

since 6 - 2 - 2 = 2, it seems that unit deduplication is working as intended

turns out duplicate DOB records in the final table is common and something for QA to resolve. I suspect duplicates in the aggregation tables are caused by these to-be-corrected DOB duplications
could deduplicate at the end of every aggregation to resolve the issue, but that would give a false impression that the aggregations are based on valid/QAd data


Fix #184 NamedArgumentChecker

Codecov Report

Merging #254 into master will decrease coverage by <.01%.
The diff coverage is 87.5%.

@@            Coverage Diff             @@
##           master     #254      +/-   ##
==========================================
- Coverage   88.34%   88.33%   -0.01%
==========================================
  Files          58       59       +1
  Lines        1424     1440      +16
  Branches      142      147       +5
==========================================
+ Hits         1258     1272      +14
- Misses        166      168       +2

Impacted Files
Coverage Δ

.../scalastyle/scalariform/NamedArgumentChecker.scala
87.5% <87.5%> (ø)

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 e2d5425...0d89d14. Read the comment docs.

Great!. Thanks.


Implement timed push notifications

Short description

This pr adds support for timed push notifications by allowing the user to specify a time and date for when the push notification should be sent.
To actually send scheduled push notifications, a cron-job to run a management command will be required on the server.
The current implementation allows users to input any time for sending a push notification, independent of the run interval of the cron job. If that is not desired, a setting for the allowed interval could be added.
Future work

It might be a good idea to add a filter form to the push notification list to filter for scheduled push notifications

Proposed changes

Add a scheduled date field to the push notification model, which may be null
Add two input fields to the push notification form to allow setting a date and time
Display the scheduled date in the push notification table
Add a management command to send all pending push notifications

Side effects

/
Resolved issues

Fixes: #2186

Pull Request Review Guidelines

The current implementation allows users to input any time for sending a push notification, independent of the run interval of the cron job. If that is not desired, a setting for the allowed interval could be added.

I think this was actually an idea we discussed in the meeting, now that you mention it. We planned on unifying both this setting and the actual cron job interval by populating it from the same variable via salt on deployment.

Just a note: we need to use systemd timers to avoid parallel execution, because the CLI command will not do well with race conditions, I suppose :)

Just a note: we need to use systemd timers to avoid parallel execution, because the CLI command will not do well with race conditions, I suppose :)

How would a cron job cause parallel execution?

How would a cron job cause parallel execution?

This, but also I'm curious:

the CLI command will not do well with race conditions, I suppose :)

What would be the way to avoid race conditions in your eyes? E.g. if I start the management command manually while the cron job is running for some reason. I guess the Firebase API client could implement some sort of lock on the db object…?

How would a cron job cause parallel execution?

I'd expect that we should execute the command at least every 5 min, better even every minute?
Cron hapily ignores that a job from the last execution is not yet finished. If the FCM API would be slow or if there are many messages in the queue, the second job would overtake the first job and they could be sending the same messages.

I have no objections for the current state. Good to go imo!

Agreed.


Circular import with latest branch

Describe the bug
Please provide a clear and concise description of what the bug is.
What is happening, and what do you expect to happen.
Current crashing on latest master branch.
System Information:
Windows 10
Python 3.10
How To Reproduce
Just run any of the examples on Windows in the latest master branch I get the following:
Traceback (most recent call last):
  File "C:\Installers\Backup\pyglet\examples\hello_world.py", line 1, in <module>
    import pyglet
  File "C:\Installers\Backup\pyglet\pyglet\__init__.py", line 9, in <module>
    from typing import TYPE_CHECKING
  File "C:\Python\Python310\lib\typing.py", line 25, in <module>
    import contextlib
  File "C:\Python\Python310\lib\contextlib.py", line 6, in <module>
    from functools import wraps
  File "C:\Python\Python310\lib\functools.py", line 22, in <module>
    from types import GenericAlias
  File "C:\Installers\Backup\pyglet\pyglet\types.py", line 2, in <module>
    import ctypes
  File "C:\Python\Python310\lib\ctypes\__init__.py", line 437, in <module>
    class LibraryLoader(object):
  File "C:\Python\Python310\lib\ctypes\__init__.py", line 454, in LibraryLoader
    __class_getitem__ = classmethod(_types.GenericAlias)
AttributeError: partially initialized module 'types' has no attribute 'GenericAlias' (most likely due to a circular import)

Can confirm it was broken in https://github.com/pyglet/pyglet/commit/2e64d8f2f33f059189bc06bb51bbff2764e6585c

@caffeinepills I renamed the module to "customtypes". Can you see if that fixes it on your end?

Fixed in master.


Post Release Documentation Fixes

What does this implement/fix? Explain your changes.
This PR includes some documentation improvements that became apparent after the initial package release. This includes fixes to update the project's sphinx config file, so it correctly lists the project as skbase.
Other minor changes include:

Minor tweaks to the pydata-sphinx-theme configuration including, adding a light/dark theme toggle and icon link (at end of top navbar) to pypi.
Dynamically setting the copyright year
Getting version by importing skbase instead of hardcoding it in conf.py
Adding sphinx-copybutton extension that fixes #54
Fixes 3 typos (user guide heading and 2 references on get started page) that had dash instead of apostrophe when trying to reference multiple BaseObjects but typed BaseObject-s

Does your contribution introduce a new dependency? If yes, which one?
No.
What should a reviewer concentrate their feedback on?
Does the documentation configuration look correct? Other than the 3 typos, no changes to documentation content are included. Any doc content changes will be handled in separate PRs.
Any other comments?
None.
PR checklist

Codecov Report

Merging #58 (fdf33b0) into main (ddd80ae) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main      #58   +/-   ##
=======================================
  Coverage   54.80%   54.80%
=======================================
  Files          16       16
  Lines        1352     1352
=======================================
  Hits          741      741
  Misses        611      611

Impacted Files
Coverage Δ

skbase/_base.py
63.36% <0.00%> (ø)

skbase/testing/test_all_objects.py
79.18% <0.00%> (ø)

skbase/testing/utils/deep_equals.py
49.20% <0.00%> (ø)

skbase/testing/utils/tests/test_deep_equals.py
91.66% <0.00%> (ø)

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

@fkiraly can you take a quick look at this PR. Only tricky part was figuring out how to let us import skbase in the conf.py without having a CI error.
Just importing skbase locally (assuming editable install) would let you run pytest without errors. But in CI it would lead to collection errors (because it was finding the tests but not from expected "locations"). Excluding the docs folder from pytest solves the problem.

Just importing skbase locally (assuming editable install) would let you run pytest without errors. But in CI it would lead to collection errors (because it was finding the tests but not from expected "locations"). Excluding the docs folder from pytest solves the problem.

Do you have an explanation for that?

Looks simple enough, great!

I would leave "API reference" as such, since API feels more vague/unspeific.
is there not a way to automatically update the switcher?
regarding BaseObjects, I think the in-line code formatting should apply only to object names. I.e., it would be BaseObject-s and not BaseObjects, because the object is called BaseObject and there isn't a class called BaseObjects

I'm fine reverting to "API Reference".
Unfortunately, there isn't a built-in way to automatically update the switcher. Though the update is formulaic (increment the name of the switcher item pointing to the stable release to the newest release version, and add an item that points to the prior version's docs (which was previously accessible through stable). We might be able to automate that later on, but will need to remember to increment things as part of our release process in the short-run.
I'm fine using BaseObject-s (even if I don't like it visually).

Just importing skbase locally (assuming editable install) would let you run pytest without errors. But in CI it would lead to collection errors (because it was finding the tests but not from expected "locations"). Excluding the docs folder from pytest solves the problem.

Do you have an explanation for that?

I wish I had a good explanation for why this happens. But I tested and confirmed it is the import of skbase to dynamically determine the version that caused the issue. After going around in a circle for a while, I compared the config with sktime and noticed the difference I've changed here, and it fixed it.

@fkiraly I think I've addressed your comments, let me know if this is okay to merge.

@fkiraly I like the idea of the switcher (being able to see docs for different versions). I'm willing to make step-by-step instructions for the release procedures so we don't forget to make that update.


WIP: Annotation support

@TYsewyn at the moment we are going to hold off on adding annotation support.  Of course if there ends up being demand from the community for something like this we will reconsider it.


Implements RpcWorkerInterface::connect.

Depends on https://github.com/capnproto/capnproto/pull/1586/.
Test Plan
In internal repo:
$ bazel test //src/edgeworker/tests:sockets/sockets-tcp-test.ew-test-bin@force-process-sandboxing

Internal PR passes tests. Merging this.

Should this have been merged when the capnp change it depends on isn't reviewed yet?

I guess it's harmless since the new method will just throw for now and nothing calls it yet, but seemed a little unexpected.

Yeah, sorry for the unexpected merge. I wanted to reduce the number of dependent PRs needing to be kept in sync and this seemed like a safe change to merge.


AddNode method

Hello!
Nodes in a graph have indices starting from 1, but it is inconvenient.
I suggest to make following changes in method AddNode, If it is possible:
public uint AddNode(T item)
{
   uint key = (uint) _nodes.Count;
   AddNode(key, item);
   return key;
}

Or is there any reason that 1 is added to key?
Thanks!

Having 0 as an invalid index has been helpful for me.
When you're manually searching for a node that meets a condition, and if no nodes meet that condition, you know it will be invalid because the uint you're assigning the result to will be 0.

@mitchellri we can always use -1 for invalid values (or in this case max value of uint), this value is used rarely unlike zero. Moreover, it is standard practice to use -1 as invalid value.

@elevir The keys are uint and -1 is not a valid uint. Using uint.MaxValue opens up easier vulnerability to accidental overflows.

@mitchellri ok, you're right. But anyway zero is frequently used value, and I still think that using zero as invalid value is very inconvenient and new framework users can be confused by this behavior. Well, when I found this library, I was confused and had to look at source code to make sure that indices start from 1 :)

Moreover all database systems start set keys from 1. As @mitchellri  said 0 means that node does not belong to graph.


Merge v1.1.1 up into v1.2.0

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

4 of 4 (100.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.7%) to 100.0%

Totals

Change from base Build<PHONE_NUMBER>:
0.7%

Covered Lines:
875

Relevant Lines:
875

💛  - Coveralls


make IO context-specific

This should fix #137.
Rather than use a single global _io, use a global hash which is keyed by context pointer.
The only data that needs to be stored are the get & set clipboard functions. All other data contained with _IO() is retrieved through the actual imgui-cpp pointer, so no data is lost on switch of context (which yields a new IO).
Sample test file, demonstrating context-specific set and get clipboards functions attached.
clipboard_test.py.gz

Coverage decreased (-0.02%) to 55.932% when pulling 3bcbc8eada6382e53bd433a09a3faafcad3af1cc on pbuckner:get_io_fix into 480b4de8ab82adaa2cd310100330b41f40274bcc on swistakm:master.

Looks good to me, thanks! I will have to triple-check that it does not conflict with #192 since context management has become a little bit convoluted but seeing your implementation I don't think they will be any major issue.


[BUG] IConfig and IConfiguration define different configuration "names" for the cookie manager config

IConfiguration defines the config as cookieCfg
IConfig defines the config as cookieMgrCfg
And the Cookie Manager implementation only uses cookieCfg
This Bug is about renaming the IConfig (and any documentation -- check Azure docs) to be the same as IConfiguration (cookieCfg)
Identified by @baxxos in #1769

v2.8.1 is now fully deployed

Rolled back CDN to v2.7.4 due to #1822

v2.8.3 is now fully deployed to the CDN