FIFO for user commands

A great tool for scriptability would be to implement a FIFO that the user could write command predicates to.
For this:

A named pipe had to be created (like with mkfifo(3)).
plwm must listen on a separate thread for input.
The same set of commands should be accepted and executed as in list_cmds/0.
call/1 invocation must be guarded as much as possible, i.e.: ignore(catch(call(Cmd), _, true))

This way, the user could send arbitrary commands by writing to the pipe, e.g.:
echo "switch_workspace(3)" >> /tmp/plwm_fifo

Notes:

The path of the named pipe should be configurable.
The user should be able to turn off the whole feature (security concerns). Maybe, it should be turned off by default even.

Note: qutebrowser has this functionality (see: QUTE_FIFO).

This functionality was proposed in #26 already.
I'm leaving that ticket open too for the time being, but it can be closed alongside this once this is implemented.


Add PreparsedDocumentProvider support

Closes #234
Hello,
This PR adds support for PreparsedDocumentProvider.
GraphQL Java documentation is available here: https://www.graphql-java.com/documentation/execution#query-caching
This also adds support for Apollo Persisted Queries via PersistedQuerySupport and ApolloPersistedQuerySupport- an implementation example or integration test for this may be wanted in the future
There are a couple of pain points that need to be resolved before merging:

Formatting in IntelliJ messes everything up > how do I fix this (maybe include this in the README or a CONTRIBUTING.md)
Copyright headers are not yet added
Please check my English

Thanks for the suggestion.
It is already possible to get access to GraphQL.Builder. For example:
@Bean
public GraphQlSourceBuilderCustomizer reactiveQuerydslRegistrar() {
	return sourceBuilder -> {
		PersistedQueryCache cache = new InMemoryPersistedQueryCache(new HashMap<>());
		ApolloPersistedQuerySupport provider = new ApolloPersistedQuerySupport(cache);
		sourceBuilder.configureGraphQl(builder -> builder.preparsedDocumentProvider(provider));
	};
}

I'm wondering why we should add this as an explicit option? It is a little more convenient, but no other benefit I can see and we don't need to mirror all available options on GraphQL.Builder if they are just pass-through's. Maybe a section in the docs on the topic along with an example could be sufficient.

I have reflected on this a little bit.
DGS Framework has the option of specify a bean, which injects the PreparsedDocumentProvider into the GraphQL object at runtime:
https://github.com/Netflix/dgs-framework/blob/3d1d61f52e7308ef21c0b5a195f9a01511421b18/graphql-dgs-spring-boot-oss-autoconfigure/src/main/kotlin/com/netflix/graphql/dgs/autoconfig/DgsAutoConfiguration.kt#L98-L102
Specifying a PreparsedDocumentProvider that caches frequently occurring queries should really be done for every application running in production. When profiling my application some time ago parsing and validating took ~18% of execution time on small queries:

After introducing the PreparsedDocumentProvider with caching this was reduced to a Caffeine cache lookup call, which is practically free. This result is amplified when the queries get bigger, and nesting increases (fragments are big offenders).
Specifying a PreparsedDocumentProvider should therefore be encouraged by the framework, and not stowed away in GraphQlSourceBuilderCustomizer. If there is sufficient support, I am prepared to open a PR for the WebMVC and WebFlux spring boot starters in order to facilitate injection via a @Bean annotation by next week (maybe in time for 1.0.0-M5?).

I appreciate the further insight.
The aim for methods on GraphQlSource.Builder is to expose hooks into the build() algorithm so everything is possible, but not every underlying option is mirrored. In that sense, the key is whether we need to be involved in some part of the config to ensure everything works or enable something not possible otherwise, like this recent change 2ecac0bd35c7d61bceb1feb5f5de8d2742a9c335 to enable multiple WiringFactory instances by independent parties.
In terms of the importance, I'm keen on adding to the documentation in the section on GraphQlSource where we elaborate on a range of things you can configure, providing mentions mentions for things that people look for and it helps them to get oriented.

So adding automatic registration of a PreparsedDocumentProvider bean via the starters is out of the question?
I can edit the pull request to add documentation in that case.

Correct, no plans at the moment to add detection of PreparsedDocumentProvider beans. Feel free to edit the PR along the lines of turning it into a documentation change. Thanks!

@rstoyanchev Ready for review, sorry for the delay

I changed this slightly to refer to the GraphQL Java documentation for most of the details, and focus mostly on Spring GraphQL specific configuration.
One more note that the processing of the PR was more time complicated than necessary because the main branch was merged into the PR branch. This is a problem because the commits need to be squashed. So generally, either use rebase or otherwise do not worry if it gets behind. We'll take care to rebase it before merging.


use GPU issue

Hi,
very good job and think you for share.
I want to know can we use GPU for tensor calculation? thank you

For the GPU you should just be able to use the TensorFlow version compiled for the GPU. I think the only thing that would change is if you wanted to do the Horovod part, but there are GPU implementations using that.


How to add this email in an array ?

I want to check 1000 emails at the same time.I have to check all email addresses in arrayinsterad of check email address  one by one.So i have added one extra email in it and check 2 email addresses at the same time but code is assuming my second email as port no.So please can you tell me the solution of this how we can check 100 emails atthe same time in an array.
$ve=array();
$ve = new<EMAIL_ADDRESS>'dave@gmail.com','dave1@hmgamerica.com','dave1@hmgamerica.com');
print_r($ve);
for ($x = 1; $x <= 2; $x++)
{
var_dump($ve->verify());
echo '';print_r($ve->get_debug());
}

The functions expect a string, so you could change the email inside the loop instead, something like:
$emails =<EMAIL_ADDRESS>'dave@gmail.com','dave1@hmgamerica.com','dave1@hmgamerica.com');
$ve = new<EMAIL_ADDRESS>'<verifier.email@example.com>');
Then you do the loop:
foreach($emails as $email){
  //change the email to the current item in the loop
  $ve->set_email($email);
  var_dump($ve->verify());
}

Hi Sir,Thanx for helping me.I have used your code.if i use this line echo '';print_r($ve->get_debug()); then it show results of that email id which i have mentioned in $ve variable and if i remove this line then it gives me result only boolean false or true.I want that if i use the function get_debug it gives me correct resullt.
$emails =<EMAIL_ADDRESS>'dave@hmgamerica.com','dave1@hmgamerica.com','dave1@hmgamerica.com');
$ve = new<EMAIL_ADDRESS>'dave@hmgamerica.com');
foreach($emails as $email){
//change the email to the current item in the loop
$ve->set_email($email);
var_dump($ve->verify());
//echo '';print_r($ve->get_debug());
}

You could just initiate the class and verify at every loop element. So do everything inside the loop.

I have used this get_debug() function inside the foreach loop but still it gives the result like  initialized mail with. The email name is shown which i have mentioned in this line.
$ve = new<EMAIL_ADDRESS>'dave@hmgamerica.com'); only Please can you do some changes in my code.

hhahaha, sorry I am not a consultant and do not build scripts for people, this was a small project I thought I would share it with others, but what you are asking for is a bit too much.
From here on, you should try to figure it out on your own :)
Thanks,


Testing reportserver datasets throws invalid object name error

This might just be a simple configuration issue; I receive an error when I try to test ReportServer datasets. See the error below:
NBi.NUnit.Runtime.TestSuite.Initiële test Reportingserver Database:
System.Data.SqlClient.SqlException : Invalid object name 'dbo.catalog'.

at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)
at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose)
at System.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady)
at System.Data.SqlClient.SqlDataReader.TryConsumeMetaData()
at System.Data.SqlClient.SqlDataReader.get_MetaData()
at System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString)
at System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async, Int32 timeout, Task& task, Boolean asyncWrite, SqlDataReader ds)
at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, TaskCompletionSource`1 completion, Int32 timeout, Task& task, Boolean asyncWrite)
at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method)
at System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior, String method)
at System.Data.SqlClient.SqlCommand.ExecuteReader()
at NBi.Core.Report.DatabaseParser.SearchDataSet(String source, String reportPath, String reportName, String dataSetName, List`1& otherDataSets) in c:\projects\nbi\NBi.Core\Report\DatabaseParser.cs:line 64
at NBi.Core.Report.DatabaseParser.ExtractQuery(IQueryRequest request) in c:\projects\nbi\NBi.Core\Report\DatabaseParser.cs:line 15
at NBi.Xml.Items.ReportXml.GetQuery() in c:\projects\nbi\NBi.Xml\Items\ReportXml.cs:line 52
at NBi.NUnit.Builder.AbstractExecutionBuilder.InstantiateSystemUnderTest(ExecutionXml executionXml) in c:\projects\nbi\NBi.NUnit\Builder\AbstractExecutionBuilder.cs:line 34
at NBi.NUnit.Builder.AbstractExecutionBuilder.BaseBuild() in c:\projects\nbi\NBi.NUnit\Builder\AbstractExecutionBuilder.cs:line 26
at NBi.NUnit.Builder.AbstractTestCaseBuilder.Build() in c:\projects\nbi\NBi.NUnit\Builder\AbstractTestCaseBuilder.cs:line 52
at NBi.NUnit.TestCaseFactory.Instantiate(AbstractSystemUnderTestXml sutXml, AbstractConstraintXml ctrXml) in c:\projects\nbi\NBi.NUnit\TestCaseFactory.cs:line 140
at NBi.NUnit.Runtime.TestSuite.ExecuteTestCases(TestXml test) in c:\projects\nbi\NBi.NUnit.Runtime\TestSuite.cs:line 70

Relevant part of the code I'm using (user and passwords anonymised):
<?xml version="1.0" encoding="utf-8"?>
<testSuite name="Unit Testing" xmlns="http://NBi/TestSuite">
	<test name="Initiële test Reportingserver Database">
		<system-under-test>
			<execution>
				<report
				connectionString="Data Source=brytta;Database=ReportServer;User Id=########;Password=########;"
			    source="Data Source=brytta;Database=HR_DWH_FIN_RAPO;User Id=########;Password=########;"
				path="/Ontwikkel/Infoview/Financieel/"
				name="kpl_proj_hierarchie"
				dataset="kpl_proj"/>
			</execution>
		</system-under-test>
		<assert>
			<row-count>
				<more-than or-equal="true">10</more-than>
			</row-count>
		</assert>
	</test>
</testSuite>

User has connect rights on both "ReportServer" and  "HR_DWH_FIN_RAPO" Databases. What am I doing wrong here?

It should work :-) ... What's your version of SQL Server Reporting Service (2008R2 ... 2016)? Could you check if the database ReportServer has a table dbo.Catalog? If yes then I think the problem is that your user has the privilege to connect to the database but not to query (read) the dbo schema.

We're using SSRS version 2014.
The database server has a table named dbo.Catalog, which I can without any problems query with the account I use for NBI.

You've permuted the attributessourceand connectionString. Source should be ResportServer and connectionString should be HR_DWH_FIN_RAPO

D'oh.. slaps his head. It works now, thank you! As an additional question: is it possible to provide parameters to stored procedures which are used by the report?

Hi rvdplujim,
would the sample on the very bottom of the following page help you?
http://www.nbi.io/docs/query-report/
I believe if you call a dataset from the report, it doesnt matter where it comes from (stored procedure, mdx query, ...) but sets the parameter from the outside. everything else might behandled internally from the report-engine.
I'm not sure about it. It might be worth a test, though.

Hi FuegoArtificial,
Hm... sounds promising. I'll take a look at that!

Hm.. that seems to work, but it leads to another issue, which I'll post in a new one.


angular-cli@webpack and Materialize dialogs

Hi,
My setup is angular-cli with webpack and I've npm'd both Materialize CSS and angular2-materialize. Some Materialize functionality works (buttons, datepicker) but unfortunately, dialogs do not.  See image for the different variations of error. All are pointing to an issue with Velocity. I've seen issues #20 and #48 which seems to point to a jQuery conflict issue but bit lost as to how I work around this considering the angular-cli@webpack bundle is somewhat of a black box...

Think I could be having a similar issue however I don't get the velocity error (or anything) in the console.
Like you said, some materialize functions work - dropdowns, buttons but collapsible has problems.

sideNav hamburger is unresponsive
accordion dropdowns attempt to animate but immediately pull back up

Using<EMAIL_ADDRESS>Installed materialize-css, angular2-materialize
I'm not sure if angular2-materialize is installed correctly as some files have changed since the angular-cli webpack update.
differences from the install steps:
Installing & configuring angular2-materialize in projects created with angular-cli

angular-cli-build.js has been removed
system-config.ts has been removed

Installing and configuring angular2-materialize with webpack

webpack.config.js does not exist in angular-cli webpack install

No need to apologise @bafinneg we're all after the same thing - a solution! :-)
I managed to get my dialogs working. Rather than trying to cobble together a fix, I simply installed a fresh copy of the original angular2 seed project and then installed materialize separately as noted here: https://github.com/InfomediaLtd/angular2-materialize
After that, I applied the "fix" supplied by @camarrone here: https://github.com/InfomediaLtd/angular2-materialize/issues/20 copied over my ts files and boom, all was well. I haven't tried sidenavs since I don't need them but everything else works so far... Hope this helps!

So this is fixed? Closing.


Big bump in code size with the switch to regex-automata in 1.9.0

We recently upgraded regex from 1.7.1 to 1.9.4 in Firefox, and that led to a significant size increase (albeit, at the size of Firefox, it's almost a rounding error).
Here is what Bloaty McBloatFace has to say about the size of symbols containing "regex" in their name when using regex 1.8.4:
    FILE SIZE        VM SIZE
 --------------  --------------
 100.0%  1007Ki 100.0%   877Ki    TOTAL

full list
vs with regex 1.9.0:
    FILE SIZE        VM SIZE
 --------------  --------------
 100.0%  1.25Mi 100.0%  1.00Mi    TOTAL

full list
That's a 25% increase in size, assuming the vast majority of these symbols are from the regex* crates (and some do come from Firefox itself, e.g. js::frontend::TokenStreamSpecific<>::regexpLiteral(), but they're on both ends. If anything, the more of these there are, the bigger the increase from regex* is).

I'm not sure I really follow what the desired action is here. The binary size increase is known and it's mentioned in the changelog: https://github.com/rust-lang/regex/blob/master/CHANGELOG.md#190-2023-07-05
This crate provides a wide array of options for tweaking the binary size at the expense of performance and/or functionality. You can even use an entirely different crate, as the changelog mentions, to swing as far as you can in favor of binary size (and compile times). It isn't clear which if these options you've tried and why they don't work for you.

Closing due to inactivity from the OP.


Applying XClone to mouse scRNA-seq: xcltk pre-processing for BAF data

To prepare scRNA-seq data for BAF analysis, xcltk is used. However, xcltk current does not support mm10 mouse scRNA-seq data at the baf_pre_phase.sh step, as it only permits usage of a Sanger-phasing hg19 fasta file, and not mm10
Additionally, heterozygous SNPs is identified via the Sanger Imputation Server. Are there alternatives to make this process applicable to mouse scRNA as well?
Lastly, baf_post_phase.sh only supports hg19 or hg38, and not mm10

@hxj5

Hi, I initialize the scripts and data for preprocessing BAF signal on mouse scRNA-seq data (see xcltk/preprocess_mouse folder under the mouse branch). For now, you may try running the script baf_pre_phase.sh to call heterozygous SNPs (commit 303d4bc). The phasing and post-phasing parts should be updated if sufficient heterozygous SNPs were detected.


Buildtool not executable as suggested by CPANTS.

Hi @castaway
Please review the PR.
https://cpants.cpanauthors.org/release/JROBINSON/Locale-Object-0.80_01
Many Thanks.
Best Regards,
Mohammad S Anwar

Thanks! (hmm, wonder why I didnt see a notification until now..)


default values should be passed to Tinybird

Currently when defining an endpoint like following
export const publishEvent = tb.buildIngestEndpoint({
  datasource: "events__v1",
  event: z.object({
    id: z.string(),
    metadata: z.string().optional().default(""),
  }),
});

and call it
publishEvent({ id: "123" })

Tinybird will reject it because the parsed value (with defaults) is not passed.

Fixed in https://github.com/chronark/zod-bird/releases/tag/v0.2.1


added streaming example using bokeh server and nyc_taxi.csv

To run example:
cd examples
bokeh serve stream.py --show

It will take a little bit for the nyc taxi to load into memory.  From there, you will need to pan or zoom once to kick off streaming.

Things that would make this example better:

[ ] start streaming immediately instead of need to pan/zoom to start
[ ] add time slider instead of text and allow user to change

Looks great to me!  Nice, simple code, and a cool demo.
Any idea why the data is being clipped across the top of Manhattan in that image?  There are data points above that in the dataset...

I wonder if I'm working with an older nyc_taxi.csv that got cut off.  When I run wc nyc_taxi.csv I get 10679308 lines in the file.  Does that sound correct?

I get 11842095, so yes, probably your nyc_taxi.csv was created using too-tight a bounding box.

That shouldn't affect the code, which I'm happy for you to merge whenever you are ready.


read_structure_by_name

Merged and rebased on top of the master branch, PR replacing PR #88.
I think this needs review for the overall concept and more specifically the dict_from_bytes function inside ads.py, to see if you have a better idea, as my current code feels a but messy and not very "pythonic", I am not a big fan of the two for loops and the large if/else statement.

Pull Request Test Coverage Report for Build 249

90 of 96 (93.75%)  changed or added relevant lines in 2 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.8%) to 90.734%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

pyads/ads.py
84
90
93.33%

Totals

Change from base Build 247:
0.8%

Covered Lines:
754

Relevant Lines:
831

💛  - Coveralls

I also seem to have broken backward compatibility - shall review


mempool addtx fifo backport

A backport of #4436 starting from ouroboros-consensus-<IP_ADDRESS>, in case it's needed in a point release.
Note that this doesn't yet bump versions (i.e. to <IP_ADDRESS>).

I think you should merge this PR to release/cardano-node-1.35.x branch.  It is slightly ahead of the ouroboros-consensus-0.1.0.x branch. The release branch includes some CI fixes. @angerman is helping to fix new CI problems on it as well.

Done. Rebased on release/cardano-node-1.35.x.

There's a type checker error:

src/Ouroboros/Consensus/Util/EarlyExit.hs:153:8: error:
    Type family equation violates the family's injectivity annotation.
    RHS of injective type family equation cannot be a type family:
      MVar (WithEarlyExit m) = MVar m
        -- Defined at src/Ouroboros/Consensus/Util/EarlyExit.hs:153:8
    |
153 |   type MVar (WithEarlyExit m) = MVar m
    |        ^^^^

module Control.Monad.Class.MonadMVar: error:
    Type family equation right-hand sides overlap; this violates
    the family's injectivity annotation:
      MVar IO = GHC.MVar.MVar
        -- Defined in module Control.Monad.Class.MonadMVar
      MVar (WithEarlyExit m) = MVar m
        -- Defined at src/Ouroboros/Consensus/Util/EarlyExit.hs:153:8

It requires io-classes-0.6. I did that from the node top level, but it's up to you how you want to do it for a release.

We are not planning next release in 1.35.x, since 8.0 was published, thus this can be closed.


Kconfig.defconfig:11: error: couldn't parse 'default $(dt_node_int_prop_int,/cpus/cpu@0,clock-frequency)'

Installed nRF command line tools + nRF connect + VS Code Extensions, followed https://www.youtube.com/watch?v=2cv_jjqk5hg&t=381s.
OS: Mac OS Monterey
Issue when building:
soc/arm/atmel_sam/Kconfig.defconfig:11: error: couldn't parse 'default $(dt_node_int_prop_int,/cpus/cpu@0,clock-frequency)': macro expanded to blank string

Print:

Hi, this is most likely a configuration issue with your extension environment, and not an issue in the kconfig files themselves, so let's start there.
This is usually a sign that the python executable running in your extension environment is different from the python executable west runs in. You can change this by configuring kconfig.python in your VS Code settings to point to the same python instance as west runs in. You'll need to restart VS Code for this to take effect.

Thanks @trond-snekvik indeed my python was wrong. This solved the issue.
My environment $PATH (terminal) was pointing to a Espressif python. /Users/me/.espressif/python_env/idf4.4_py3.9_env/bin/python
If help others, how I fixed in VS Code (macOs):

Go to Code -> Preferences -> Settings
On the search bar at the top, type kconfig
On the left, below Extensions click Kconfig
On the right, find Kconfig: Python type the path including the executable name i.e. python
Close, restart

Since when I installed the toolchain, it was pointing to the 'wrong' python, should I reinstall it all again (any risk packages were installed in the wrong folder)? Thanks again

Great!

Since when I installed the toolchain, it was pointing to the 'wrong' python, should I reinstall it all again (any risk packages were installed in the wrong folder)?

If you struggle with the build, it should be the first check you make, but if west build still works fo you, I wouldn't bother

Hey @trond-snekvik, I'm only digging up this thread because I'm having the exact same issue. I can build with west and it shows as being successful but the error continues to pop up. I wasn't sure if it was due to the python being used is within the toolchain rather than any python version installed locally.
This shows the same error message that @idkq got.

And here is the west build using the toolchain provided python 3.9.6, where as my python is the macOS Big Sur default of 2.7.

And just for proof, here is the build success verification printout.

Should I be pointing Kconfig: Python to the toolchain version to get rid of this error?  It seems to be working just fine, I just wasn't sure if I can completely ignore that error or not. If so, it'd still be nice to clean the error up if possible.

Hey, this looks like a python mismatch, yeah. Changing your "Kconfig: Python" should indeed fix this (you'll need to restart your vs code instance). It doesn't affect anything except the extension itself, and I'd be more wary of ignoring the error if you're using the extension's menuconfig UI to change things.

Thanks for the confirmation @trond-snekvik. I'm not using the menuconfig UI, but none the less, I decided to put the toolchains Python link into the "Kconfig: Python" and the error has gone away. Thanks again for all your dedication!

IDK if this is my issue or not but my Mac only has python3 and this doesn't work at all

@smenor would you mind creating a post on Nordic's devzone for this? Any details you can provide about your environment would be helpful.

@trond-snekvik sure I can do that


Updated filter view command to accept multi-word filters and filter ID

Notes for Reviewers
This PR fixes #11316
In this PR I have fixed the filter view command to accept the multi-word filters and filter ID as well.
Added a new test case for the multi-word case.
Two new golden files for the multi-word filters have been added. One file is added in fixtures and other in Testdata.
All the tests have been passed as shown below:

Signed commits

[x] Yes, I signed my commits.

Good work on support for multi-word filter name but still the ID is not supported.

@Aviral0702
Let's discuss this in Meshery Dev meeting starting 7:30 PM IST Today. Adding this as an agenda item....
Meeting minutes: https://docs.google.com/document/d/1Dg4Uz9rGTuGHmYZwIt47z1j5x3LmnpxD1M1SgypAkQ0/edit?pli=1#
Meeting link: https://meet.layer5.io/meshery

Filter view by ID will not work so error in cloud. Needs investigation low priority for now.

I'll test and approve it today. Thanks @Aviral0702

I'll test and approve it today. Thanks @Aviral0702
@Jougan-0 Thanks!

@MunishMummadi, would you like to offer review?


Myria broadcast partitioning support

This supersedes https://github.com/uwescience/raco/pull/517. I also fixed another issue in this PR (https://github.com/uwescience/raco/issues/495) since it needed to be done to properly support debroadcast of QueryScans.

Coverage decreased (-0.09%) to 91.858% when pulling d9e22cf5ebf9ee413ca65791a9242d5e2adaa5d5 on myria_broadcast into 8f8e38f6d5e870bc0b9098d0dff5316c6b44e42a on master.

Coverage decreased (-0.09%) to 91.858% when pulling e012d4d243e75afdf65492f5a37a1f22345a057d on myria_broadcast into 8f8e38f6d5e870bc0b9098d0dff5316c6b44e42a on master.

Mostly nitpicks, otherwise looks good.

Coverage decreased (-0.09%) to 91.852% when pulling 837c2973c26807d55025d33259ede0bd562e66c5 on myria_broadcast into 8f8e38f6d5e870bc0b9098d0dff5316c6b44e42a on master.

Coverage decreased (-0.09%) to 91.852% when pulling 4b9e2bf67a5a036133281643aea4ed4460273f6e on myria_broadcast into 8f8e38f6d5e870bc0b9098d0dff5316c6b44e42a on master.

@shrjain if you wanna take a look at the new ShuffleAfterFileScan rule, that would be swell :)

@senderista: But from the mail thread I gather that this won't work without pushselects rule being updated.

Coverage decreased (-0.05%) to 91.892% when pulling 275e2c0053b35e79076e0c2e4b7ff9060c055288 on myria_broadcast into 8f8e38f6d5e870bc0b9098d0dff5316c6b44e42a on master.

Will the push-select rule be updated in this PR?

I guess we may as well implement it, it shouldn't be hard...

Coverage decreased (-0.06%) to 91.882% when pulling fb6f819a8b7d25444737085a9da0808bc39f7287 on myria_broadcast into 8f8e38f6d5e870bc0b9098d0dff5316c6b44e42a on master.

Coverage increased (+0.01%) to 91.956% when pulling 2a1633f0981439a3c980737305c38aa430819159 on myria_broadcast into 8f8e38f6d5e870bc0b9098d0dff5316c6b44e42a on master.

@jingjingwang @shrjain I think this should be ready to merge if you can make a final pass. I've added the new PushSelectThroughShuffle rule and some minimal test coverage for the new rules (ShuffleAfterFileScan, PushSelectThroughShuffle).

Coverage increased (+0.02%) to 91.963% when pulling b1c052d1039184ba482ca2b5533310072f682183 on myria_broadcast into 8f8e38f6d5e870bc0b9098d0dff5316c6b44e42a on master.

@senderista Glad to see this make it in!! Sorry I couldn't help push it through.


Add travis testing

Hey!
You can add travis testing by following this guide I wrote while working in Seravo:
https://seravo.fi/2015/continuous-integration-testing-for-wordpress-plugins-on-github-using-travis-ci
Few examples
You can also have a look for phpunit testing here:
https://github.com/devgeniem/wp-sanitize-accented-uploads/blob/master/.travis.yml
And just running php syntax checking in the project here:
https://github.com/devgeniem/better-wp-install-dropin/blob/master/.travis.yml

Looks reasonably easy. Thanks!
I'll take a closer look in the near future.

Well that was surprisingly easy. Wonder why I haven't done that in the past. Seems that 5.2 & 5.3 are failing for whatever reason, but that will probably be easy to fix.
I'm still not really digging into the concept of unit testing, and I don't even know what would I test in this kind of plugin that basically just glues existing functionality together.

I just usually add as many small functions as possible and test few different use cases ( different parameters for those functions ) and assert those use cases in unit tests.
Having a good test coverage needs your code to be structured in small testable pieces. This just needs an attitude shift and takes some time.
If you want to test wordpress integrations deeper you should use: https://github.com/10up/wp_mock
I would want to start using those but have been too busy/lazy :(

It seems that php 5.3 & 5.2 can't run php as a server so you can't use the default tests from Seravo example.
I would just add different testing matrix for them and maybe for starters just syntax check those.

I'll dig around it sometime.
I guess I could break some of the functions in the class into smaller portions & refactor the functions a bit, doesn't make a lot of sense including a script in checkBanners. Maybe I'll rename it to renderBanners and everyone is happy? :trollface:

Someday I will learn to write tests, but at this time I don't really have the time and/or patience to write them, at least for this project. Travis tests will do for now :)


Why exactly is UE4Editor-GitSourceControl.dll added to source control?

Hello,
I am not sure if this is the right place to ask about it (creating a github issue and all), but I just noticed that the two following files from the binaries folder are also added to the source control:
UE4Editor.modules
UE4Editor-GitSourceControl.dll
Why exactly is that? Is the intention so that the user may use the plugin without having to have Visual Studio installed on the machine? If so, is this really enough? I thought that it wouldn't work without the intermediate folder as well.
Thanks
Jan

Hello, thanks for asking, and thanks for answering ; thé point is to use the plugin in data-only projects, and I test it to be sure it works properly as intended.
Cheers !


Standardize on "System.currentTimeMillis()" within the ExecutorManager class

This is a small change to standardize on using System.currentTimeMillis() within the ExecutorManager class.

The Jodatime has facilities to mock time to make unit testing easier.
We should move to the new Java8 Time


Add missed test-threads=1 to coverage CI

In #2685 I missed adding the test threads option to the coverage CI, due to which it still occasionally times out and fails. This adds that.
Also added in feature test script for uniformity, even though those are not failing

@containers/youki-maintainers going ahead and merging this as

the test-threads = 1 concept is already reviewed and approved in other PR
This only changes CI file and a script, both are validated by passing their corresponding CI


genoconvert module

Trident can deal equally well with plink binary and eigenstrat data. We could have a module that converts the genotype data in packages from one format to the other. That would also include replacing the format definition in the POSEIDON.yml file.

In this context forge should also get an option to define the desired output format

Indeed! However, my Plink module in sequence-formats doesn't feature Plink writing yet, just reading, so it'll have to wait until I get around implementing that.

OK, this is partly solved now with forge being able to output PLINK format.

Indeed forge covers that usecase then. But I think for ease of use we should add an explicit convert module. It would be a confusing user experience to go through forge if you just want to "quickly convert this package".

Hmm. What interface do you have in mind? Do you want to convert in place? That sounds dangerous... or do you want to just add the converted genotype files to the same package? That would be possible, but the new genotype datafiles would then not be covered by the POSEIDON.yml file (cause that can have only one genotype dataset)...
So I don't really see how this would be any different from a new forge command. With the interface I have in mind it'd be very similar:
trident convert -d basedir -n package_name --toEigenstrat -n new_pac_name -o /path/to/new/pac

versus
trident forge -d basedir -f "*package_name*" --eigenstrat -n new_pac_name -o /path/to/new/pac

or is there a cleverer, more intuitive interface?

Hm - I really imagined simple replacement. This conversion from EIGENSTRAT to PLINK and back is lossless, right? And you can only perform it, if you have writing permissions for the respective directories. So while I understand your concern, I also love how simple this would make things:
trident convert -d . --outFormat EIGENSTRAT

Hmm, OK, that's simple enough. I agree... and with -d in this case you would select a single directory?  Does it then convert all packages?

It does. Probably we should ask the user for confirmation.
And we should think carefully about the order of events in convert to prevent loss of data even in case of an interrupt:

Conversion and therefore creation of new data files
Replacement of the paths in the POSEIDON.yml to point to the new data files
Finally: Delete the "old" data files

Or perhaps even not deleting the old files... simply pointing the paths in the POSEIDON.yml to the new files without deleting the old ones. That would allow for maximum flexibility then to use the data with tools that require either format.

Ah - ja - that's also possible. What should then happen when the conversion is performed in the other direction?

Implemented in #62


Restic repository management fixes

This does not need to make it into the first alpha, so look at other open PRs first.
Currently if, when creating a new restic repo as part of taking a backup, the repo creation fails, Velero waits for an hour before reporting the failure, because it may "eventually" succeed.  This is a bad UX, though, and if it failed to create the first time, it won't likely succeed the next time without user intervention. So, I changed it so the backup fails fast if the repo creation fails the first time.
I also lowered the resync interval for the restic repo controller, so repos that become "not ready" are retried more often - makes it more likely to get back to a good state after getting into a bad state.
One or two other small fixes in their own commits.
Testing looks good so far, but would like to do some more.

I also lowered the resync interval for the restic repo controller, so repos that become "not ready" are retried more often - makes it more likely to get back to a good state after getting into a bad state.

Is this a separate state from the one mentioned initially (that would take an hour to retry)?

Yeah - existing restic repositories are periodically checked for integrity, and if they fail that for any reason, they'll become NotReady. That's a different case than a new repo that fails to initialize for some reason.


Only parse subscript and deinit as declaration references within macro role attributes

The macro role attributes require us to parse subscript and deinit is
normal member references. Thread an ExprFlavor through to make this happen,
and do so for both @attached and @freestanding.

@swift-ci please test

@swift-ci please test

@swift-ci please test Windows

@swift-ci Please test Windows


add support for static pages

For example, Ghost has support for "static pages" which do not appear as blog posts, but could be a static contact/about/links page.  These are useful to provide some extra information that isn't necessarily blog-able.
This feature would go great with custom URLs (per https://github.com/HubPress/hubpress.io/issues/437)

I've just gone through some of the older issues relating to this and closed them out.
However, it may be worth adding to the backlog for consideration. No promises about implementation, but there seems to be a demand for it.

It would be nice to be able to add extra custom menu item with link to other asciidoc besides blog post. A common use case is About or Disclaimer page that people would like to permanently display along in their blog site.

#354 relates to this.

Added in 0.9.0!  Thanks, devs! 😃

Thank you @rorosaurus for being here more than a year after the creation of that issue 👍😘


Cucumber 3.0.0.pre1 - running before hooks multiple times

Summary
My Before hook runs twice after a failed scenario with the --retry flag
Expected Behavior
The before hook should only run once
Steps to recreate
Create a test suite with a "fail" in the step.  In the before hook, open a new Watir::Browser.  You will see that 2 browsers get opened after the first "fail")

Thanks for reporting, @westlakem, I'll have a chance to look into this tomorrow. If you'd be interested in making a pull request we'd be happy to help you put something together - otherwise if we're able to repro we'll fix it but can't guarantee a timeline.

The unit of execution in Cucumber is what is internally is called a Test Case, and it includes all hooks (before, after, after-step, and around hooks). The semantics of the --retry option, is that after the whole Test Case has executed (including after hooks), if it failed, the whole Test Case (including before hooks etc) is executed again. This is not an issue, it is the intended behavior.

@brasmusson The problem is the --retry flag is running the hooks multiple times in the same test execution.  See example execution stack below.
Before hook runs
Test Runs and Fails
After hook runs
Before hook runs
Before hook runs
Test Runs and Fails
After hook runs
After hook runs
Before hook runs
Before hook runs
Before hook runs
Test Runs
After hook runs
After hook runs
After hook runs

@westlakem Oh, I misinterpret the issue description. We do not want that.


Simple write example

Hi,
I tried the simple write example: https://github.com/gimli-rs/gimli/blob/master/crates/examples/src/bin/simple_write.rs
I ran it, got the object file.
Then when i tried to compile it into an executable i got following errors:
PS C:\Users\toni-\Desktop\gimli_test> gcc hello.o
hello.o:hello.c:(.debug_line+0x22): relocation truncated to fit: IMAGE_REL_AMD64_ADDR32 against `.debug_line_str'
hello.o:hello.c:(.debug_line+0x2c): relocation truncated to fit: IMAGE_REL_AMD64_ADDR32 against `.debug_line_str'
hello.o:hello.c:(.debug_line+0x31): relocation truncated to fit: IMAGE_REL_AMD64_ADDR32 against `.debug_line_str'
hello.o:hello.c:(.debug_info+0x8): relocation truncated to fit: IMAGE_REL_AMD64_ADDR32 against `.debug_abbrev'
hello.o:hello.c:(.debug_info+0x31): relocation truncated to fit: IMAGE_REL_AMD64_ADDR32 against `.debug_rnglists'
hello.o:hello.c:(.debug_info+0x35): relocation truncated to fit: IMAGE_REL_AMD64_ADDR32 against `.debug_line'
collect2.exe: error: ld returned 1 exit status

So i gone ahed and changched the format from Dwarf32 to Dwarf64. This time the linking actually worked. But then as i gone to test it in gdb. I got following error:
Dwarf Error: bad offset (0x140010000) in compilation unit header (offset 0x0 + 6) [in module C:\Users\toni-\Desktop\gimli_test\a.exe]

My gcc is:
gcc.exe (MinGW-W64 x86_64-msvcrt-posix-seh) 14.1.0
Copyright (C) 2024 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

Bye

The error is only under windows (i tested it under linux and it worked fine)

It's using the wrong relocation kind. I never tested it under windows. It needs to be RelocationKind::SectionOffset for references to other DWARF sections (so for RelocationTarget::Section the resulting relocation type is IMAGE_REL_AMD64_SECREL). You still need to use IMAGE_REL_AMD64_ADDR64 for RelocationTarget::Symbol.
Changing to Dwarf64 is the wrong way to try to fix this. That is only needed when the DWARF sections are large. It has nothing to do with address size.

Thank you that fixed it. Please incude that in the actual write example so other beginners (like me) won't stumble on the same problem


Force memberaudit updates when a character applies

When a member applies, a memberaudit update is immediately queued for that character. Unless a staff member looks at the application within seconds of that action, this more or less solves the stale skill issue.
Because we're running MA 2.10, this is still a bit heavy-handed, since we run a full character update every time, instead of just pulling skills and corp/alliance. That can be easily fixed if MA is updated.
Fixes #17.

Players should not have the ability to do this, and it should not be automatic on application open. That will likely be a recipe for disaster 😞
Instead, we should add to the skill check window pane the last time the skills were polled, and a button to do trigger it again.
It doesn't need to be run on every application request

I somewhat disagree, but I'm willing to be convinced.

Players should not have the ability to do this, and it should not be automatic on application open. That will likely be a recipe for disaster 😞

Recall that applications are gated on a cooldown, both via rejection and withdrawal. It is way worse for WHC staff to be spammed with applications than it is for ESI to get a MA forced update with the same frequency. So if there's ever a situation where a player can cause issues due to MA update spam, they are causing far worse problems for staff, which needs to be addressed immediately. So I believe this is self-limiting in a way that never makes it an issue.
Also, the total number of MA force updates ever issued is necessarily equal to the total population of WHC plus those rejected. That's not a lot of people (when counted in MA updates per day), and it's spread over a long period of time.

Instead, we should add to the skill check window pane the last time the skills were polled, and a button to do trigger it again.

The common case is that characters are likely only ever going to apply to WHC once, which means MA updates would have to come from some other source in Auth. Given that MA is not being updated currently, that's likely to be never.

It doesn't need to be run on every application request

Given the state of MA, it really probably does. MA is currently useless. Most data is months or years out of date, if it exists at all, which means I suspect we'll be running a force update on every single app.
Basically, I'm arguing that a manual update will cause the same order of magnitude number of forced MA updates while also making staff click more buttons and spend more time. If I have a realistic choice between spending people time and computer time, I'm always going to choose the latter.
One additional thing: with Auth v4, we'll have a sharply reduced number of ESI requests for a WHC app compared to a normal MA update, since we don't need the whole character data pulled. The current old version of MA only has a single, monolithic force update task function, but the newer versions have finer granularity, which means we can just pick a couple relevant ones. (This applies evenly to both approaches, but it's worth knowing.)

The difference is that if a player re adds their character to auth
themselves, it also automatically pulls the latest. Now this isn't great
for mains, because removing that can cause some issues, but it's fine for
alts.
And I think we had a conversation about most players meet the skill
requirements on their main?
So I could see a compromise of pulling automatically on their main, but not
alts.
Also, you're still going to need a skill update button for staff  for any
app that takes longer than 24 hours to be reviewed - people are people,
they're going to 100% put in an app with just shy of the skill requirements
that will be finishing in  the next day or so.  I know there is a  warning
about the time gate but lol, people aren't going to think it applies to them
Lastly I'm more concerned about the opening days rather than in general.
That first day or two is going to see hundreds of apps opened, and if it
still is 3.8 then there will be 4x that amount of ESI requests. The
possibility of that causeing an automatic ban on the esi is not that far
fetched, especially since we rarely do that (tho perhaps Bates or Marn can
speak more to the likelihood here)
Maybe a decent compromise is automatic on mains, with a button for alts if
someone says they need it, and of course a staff button, and a celery task
put together to run once right before opening to fetch everyone in the pav
group? Celery update tasks like that have built in limiters I believe.
Another thing, that id be ok, is a time gate of its own on the member
check.  The self withdraw of application doesnt have a time gate I think?
Still don't want to punish people who accidentally push withdraw either.
So a time gate on the member audit of 24 hrs or something for that
situation makes a lot of sense to me
On Tue, Jul 23, 2024, 7:42 PM mome-borogove @.***>
wrote:

I somewhat disagree, but I'm willing to be convinced.
Players should not have the ability to do this, and it should not be
automatic on application open. That will likely be a recipe for disaster 😞
Recall that applications are gated on a cooldown, both via rejection and
withdrawal. It is way worse for WHC staff to be spammed with
applications than it is for ESI to get a MA forced update with the same
frequency. So if there's ever a situation where a player can cause issues
due to MA update spam, they are causing far worse problems for staff, which
needs to be addressed immediately. So I believe this is self-limiting in a
way that never makes it an issue.
Also, the total number of MA force updates ever issued is necessarily
equal to the total population of WHC plus those rejected. That's not a
lot of people (when counted in MA updates per day), and it's spread over a
long period of time.
Instead, we should add to the skill check window pane the last time the
skills were polled, and a button to do trigger it again.
The common case is that characters are likely only ever going to apply to
WHC once, which means MA updates would have to come from some other source
in Auth. Given that MA is not being updated currently, that's likely to be
never.
It doesn't need to be run on every application request
Given the state of MA, it really probably does. MA is currently useless.
Most data is months or years out of date, if it exists at all, which means
I suspect we'll be running a force update on every single app.
Basically, I'm arguing that a manual update will cause the same order of
magnitude number of forced MA updates while also making staff click
more buttons and spend more time. If I have a realistic choice between
spending people time and computer time, I'm always going to choose the
latter.
One additional thing: with Auth v4, we'll have a sharply reduced number of
ESI requests for a WHC app compared to a normal MA update, since we don't
need the whole character data pulled. The current old version of MA only
has a single, monolithic force update task function, but the newer versions
have finer granularity, which means we can just pick a couple relevant
ones. (This applies evenly to both approaches, but it's worth knowing.)
—
Reply to this email directly, view it on GitHub
https://github.com/EVE-University/whctools/pull/42#issuecomment-2246528451,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ADLOBQZUYU6XIRNSGSHVNQ3ZN3S5RAVCNFSM6AAAAABLJG52QOVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDENBWGUZDQNBVGE
.
You are receiving this because you commented.Message ID:
@.***>

The difference is that if a player re adds their character to auth themselves, it also automatically pulls the latest. Now this isn't great for mains, because removing that can cause some issues, but it's fine for alts. And I think we had a conversation about most players meet the skill requirements on their main? So I could see a compromise of pulling automatically on their main, but not alts.

I'll check the difficulty of that. I suspect it's not terrible, and I'd be fine with it.

Also, you're still going to need a skill update button for staff for any app that takes longer than 24 hours to be reviewed - people are people, they're going to 100% put in an app with just shy of the skill requirements that will be finishing in the next day or so. I know there is a warning about the time gate but lol, people aren't going to think it applies to them

I'll make sure to rosin up my tiny violin for those people.
 Less work for the staff.
I'm not opposed to the update button on principle, I just happen to be opposed to most situations in which it's necessary---since those nearly always coincide with situations that cause a lot of headaches for CCs.

Lastly I'm more concerned about the opening days rather than in general. That first day or two is going to see hundreds of apps opened, and if it still is 3.8 then there will be 4x that amount of ESI requests. The possibility of that causeing an automatic ban on the esi is not that far fetched, especially since we rarely do that (tho perhaps Bates or Marn can speak more to the likelihood here)

The initial push is coming regardless. So the only question we need to ask is whether automatic pulls are unnecessarily updating MA records. If an automatic update is just replicating what a manual one will do, then I don't want the manual one.
I do think I buy your point about alts not needing a pull. This brings us back to the whole "auth main / whc main" issue, since the only time that an alt would need a pull is if an auth-main doesn't meet the reqs and another of their characters does, which we have us in a situation where we're accepting an auth-main that doesn't meet the skills in order to allow a non-auth-main that we'd presumably be accepting to apply afterwards. That's a lot of added complexity that we don't really want (especially when one of those drops corp).
But all of that is a post-launch problem, because refactoring for an auth/whc main split is too much work right now. I'd rather get this off the ground.

Maybe a decent compromise is automatic on mains, with a button for alts if someone says they need it, and of course a staff button...

Seems a bit overkill, but maybe fine. What's the "button for alts if someone says they need it" vs "a staff button"? You're not talking about a button on the user panel, right?

...and a celery task put together to run once right before opening to fetch everyone in the pav group?

If that's something you want, we can, but Pav is actually non-negligibly larger than the current active WHC population. There's a ton of people that dabbled and never left the group.

Celery update tasks like that have built in limiters I believe.

If so, then the current code adheres to it. All we do is spawn a celery task with a reasonably high priority. That said, just from observing the launch behavior of celery, I don't think this is the case. Maybe they only rate limit after a certain number, though. I don't know.

Another thing, that id be ok, is a time gate of its own on the member check. The self withdraw of application doesnt have a time gate I think?

Self-withdraw currently has a 2d (WHCTOOLS_TRANSIENT_REJECT) timer. So we're clear there. Again, I don't want any loopholes that can create arbitrary numbers of applications for staff to see, so I'm in total agreement with fixing them if we see any.

I'm good with that
On Thu, Jul 25, 2024, 1:42 PM mome-borogove @.***>
wrote:

I could see a compromise of pulling automatically on their main, but not
alts.
This was easy. It is done. Alts no longer trigger auto-updates, so the
number of ESI calls is capped at the total number of humans applying to
WHC, which is very manageable.
We can still go back and add manual triggers, last-update fields, buttons,
and stuff, but the current status should be sufficient for launch IMO.
—
Reply to this email directly, view it on GitHub
https://github.com/EVE-University/whctools/pull/42#issuecomment-2251060862,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ADLOBQ3ORY6O6GRRRU3XAETZOE2H3AVCNFSM6AAAAABLJG52QOVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDENJRGA3DAOBWGI
.
You are receiving this because you commented.Message ID:
@.***>

Going to go ahead and roll #46 in with this one, too, since it's mucking with the same apply-time MA pulls. Just needs a couple additional pieces stuck in there.

Per Marn, using the EveCharacter corp/alliance info is kept up to date, so fixing #46 is straightforward.


feature (v0.1.8): add release pipeline

Codecov Report

Merging #14 (39ea9ba) into main (134c478) will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##              main       #14   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files            1         1
  Lines            2         2
=========================================
  Hits             2         2

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 035fee5...39ea9ba. Read the comment docs.


Added data for n-heptane

The only groups of files that I have not yet been able to complete are Ciezki, Fieweger, Karwat, Shen, Vandersickel, and Zhang, most due to the common property of pressure or pressure rise not being converted correctly. I am currently deleting the pressure rise common property on each xml file, then converting and rewriting the pressure rise in the yaml file. As for the Zhang files in .inp format, would it make the most sense just to start from scratch and write out the yaml files? Or is it possible to convert them straight to yaml?

@bryanwweber I am unsure why that data was sent again, I placed all of the new files into the github folder before I pushed them. Can I meet with you at your office either monday at any time or tuesday at 3:30 to show you?

@bradcarr23 The MD files look like they are in the root directory. I think you need to make a new branch and make a new PR for the n-heptane files (and while you're at it, delete the MD files from the root directory)


Django32 testing

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@746131e). Click here to learn what that means.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             master       #1   +/-   ##
=========================================
  Coverage          ?   92.85%
=========================================
  Files             ?       21
  Lines             ?      588
  Branches          ?       69
=========================================
  Hits              ?      546
  Misses            ?       26
  Partials          ?       16

Continue to review full report at Codecov.

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


Accessing the $loggers array in Monolog\Registry

@Seldaek
class Registry
{
    /**
     * List of all loggers in the registry (ba named indexes)
     *
     * @var Logger[]
     */
    private static $loggers = array();

    //...
}

Code is at https://github.com/Seldaek/monolog/blob/master/src/Monolog/Registry.php#L45
My initial goal was to be able to know if a logger existed in the registry. Currently, we can only achieve that by wrapping the getInstance() method in a try...catch block and catch the InvalidArgumentException thrown by that method. Not very elegant.
So, my suggestion would be to either

add a loggerExists($name) method

or

make the $loggers array protected.

My preference goes to the former. I'd be happy to make a PR for that if you'd like to include such change.
Thanks.

I'd be ok with a PR but please call it hasLogger() I think it fits better with the other method names.

@Seldaek
Thanks. It looks like @theravel took a stab at it before I did. Just reviewed his code on his fork.
Feel free to add to my comments or wait for the actual PR.

I guess this can be resolved


config.severity doesn't change log level

Changing the config.severity = Logger::Severity::DEBUG to config.severity = Logger::Severity::ERROR only changes the keyword in the logs without affecting the actual log output in Ruby on Rails.
Example:/-
[2024-02-28T14:46:34.027248 #1] DEBUG -- : [httplog] {"method":"POST","url":"http..........
[2024-02-28T14:46:34.027248 #1] ERROR -- : [httplog] {"method":"POST","url":"http..........

(Not a maintainer, just a user of this library)
When I change the severity in our application using the latest version of the gem (1.6.3), it does seem to change the level. For example, if my Rails log level is INFO and I set the severity to Logger::Severity::DEBUG, then I don't see any [httplog]s, but if I change the severity to INFO or higher, then I see the errors. Maybe double-check your Rails log level in the environment you're logging in? Hope this helps!

@dushanstoryful sorry for the slow response. I can't reproduce this, so if it's still an issue, could you provide a bit more context? Is this with Rails? Any non-standard logger?


Remove AliasShadowsRecipe compilation error

AliasShadowsRecipe doesn't actually ever get created, because the check for redefinitions that emits the more-general Redefinition compiler error catches cases where an alias has the same name as an existing recipe instead. So it is redundant and can be removed.

Nice, good catch!


Basic landing page

Need basic landing page so we can switch to a country selector (https://github.com/coderbunker/coderbunker.com/issues/1)

[x] history and context
[x] logo present
[x] address present
[x] generic email contact present<EMAIL_ADDRESS>[x] social network (LinkedIn)
[x] team (Jérémy, Élic, Ricky) with LinkedIn and Github links
[x] list of services
[x] list of partners (TechnoLibre, Drave Développement, Diginov and Why Not Blue)
[x] French version

[ ]  validate page
[ ]  document the deployment steps and structure of code
[ ]  deploy to coderbunker.ca (access to Google Domains)
[ ]  set up deployment from main and staging
[ ]  FR translation
[ ] Add the remaining profile & picture & profile
[ ] Replace the placeholder pdf when the Retainer Agreement PDF is ready


Dockstore can find a CWL, but not its test file

Describe the bug
I've only observed this in the context of https://github.com/dockstore/dockstore/issues/4540, so there is a chance this is a bug-within-a-bug and not a separate issue. As is always the case in science, more testing is needed.
It is possible to have a Dockstore entry wherein the Dockerfile and CWL are found with no problem, but Dockstore, but not the test descriptor file, and this persists even if:

allele_freq.test.json is moved from the test directory into the same directory as allele_freq.cwl
allele_freq.test.json is renamed allele_freq.test.yml
Both of the above happen and the Dockstore entry is changed appropriately (ie it still can't find it in /tools/allele_freq.test.yml if you tell it is in /tools/allele_freq.test.yml)
This happens even if you move things around on different branches, have different default versions, etc

To Reproduce
See #4540.
https://dockstore.org/containers/registry.hub.docker.com/ashedpotatoes/cheers2019/allele_freq:v0.2.2-cwl?tab=info
Expected behavior
If a CWL can be found, its test file should also be found. Even if the entry is malformed, it should be consistently malformed rather than giving the appearance of being half-functional.
┆Issue is synchronized with this Jira Story
┆Fix Versions: Dockstore 1.11.X
┆Issue Number: DOCK-1963
┆Sprint: Backlog
┆Issue Type: Story

Assignee should pick up above closed PR. Double-check the above PR's fix works, then add a test.

It turns out this can also result in the Dockerfile going missing, although in the Dockerfile's case it can be fixed by a hard reload of the my-tools webpage.


Reorganising subtopics and measures under Health

Data migration script to be run once. Does the following:

Create new subtopic 'Wellbeing'
Rename subtopics
Reorder subtopics
Move measures into correct subtopics
Reorder measures within subtopics

@cfq what about redirects?


[SMALLFIX]add javadoc for PermissionCheckTest

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/13189/
Test PASSed.

Merged build finished. Test PASSed.

LGTM. thanks


Changing status to void

Hi,
I am having trouble changing status of an envelope to void using the ChangeStatus() method. The problem is that it does not include the required "voided_reason" in the body. It looks like including this within the body of the request if the new status is "void" would do the trick.
However, I am on a (very) tight deadline. Is there another way you can think of to void an already signed or partially signed envelope. The reason for wanting to void an envelope is in the situation where we need to change one of the signers after the document has been signed.
Thanks,

@peterlord  you are correct and adding support for voiding an envelope is something we haven't yet provided. If you will code it yourself (sounds like you already know how and it's pretty straight forward) then just submit this change and we'll take it as part of this library (that's what open source is all about!). I would recommend adding an optional string parameter to UpdateStatus() - this way you don't break others and you don't need to write a new overload (but that option is ok too, maybe Void() or VoidEnvelope() would be fine)

closing this since now we have this ability with your latest change. We'll update the nuget package next week with this update. thanks.

@peterlord , we're looking for a developer who is using the library to share their experience in the coming conference (I know it's a short notice, it's 2 weeks from now). We can give you a free conference ticket if you can present. Is that something you might be interested in?


Assistant welcome ux static

Layout for New conversation page.
Buttons are not working and for now we get 4 random agents, this PR is only about the layout.
Next step:

configure the global @helper agents and make the button to start a convo with it work.
display the expected list of features agents.
build a page to display the list of agents.

4 assistants:

All assistants:

I think it's better to open a gallery of assistants in a modal than in the context!


RuntimeError: ArgumentNullException: Value cannot be null.

Hi. I am trying to use Holodeck to generate "a living room". After "wall object constraint plan for living room", an RuntimeError is raised:
[ERROR] Could not generate scene from a living room. Traceback:
Traceback (most recent call last):
  File ".../Holodeck/ai2holodeck/main.py", line 56, in generate_single_scene
    _, save_dir = args.model.generate_scene(
  File ".../Holodeck/ai2holodeck/generation/holodeck.py", line 328, in generate_scene
    scene = self.generate_small_objects(scene, used_assets=used_assets)
  File ".../Holodeck/ai2holodeck/generation/holodeck.py", line 227, in generate_small_objects
    controller = self.small_object_generator.start_controller(
  File ".../Holodeck/ai2holodeck/generation/small_objects.py", line 294, in start_controller
    controller = Controller(
  File ".../src/miniforge3/envs/holodeck/lib/python3.10/site-packages/ai2thor/controller.py", line 618, in __init__
    event = self.reset(scene)
  File ".../src/miniforge3/envs/holodeck/lib/python3.10/site-packages/ai2thor/controller.py", line 777, in reset
    self.last_event = self.step(action="CreateHouse", house=scene)
  File ".../src/miniforge3/envs/holodeck/lib/python3.10/site-packages/ai2thor/controller.py", line 1066, in step
    self.run_action_hook(action)
  File ".../src/miniforge3/envs/holodeck/lib/python3.10/site-packages/ai2thor/controller.py", line 997, in run_action_hook
    event = method(action, self)
  File ".../src/miniforge3/envs/holodeck/lib/python3.10/site-packages/ai2thor/hooks/procedural_asset_hook.py", line 109, in CreateHouse
    return create_assets_if_not_exist(
  File ".../src/miniforge3/envs/holodeck/lib/python3.10/site-packages/ai2thor/hooks/procedural_asset_hook.py", line 58, in create_assets_if_not_exist
    evt = create_asset(
  File ".../src/miniforge3/envs/holodeck/lib/python3.10/site-packages/ai2thor/util/runtime_assets.py", line 327, in create_asset
    evt = thor_controller.step(
  File ".../src/miniforge3/envs/holodeck/lib/python3.10/site-packages/ai2thor/controller.py", line 1106, in step
    raise RuntimeError(
RuntimeError: ArgumentNullException: Value cannot be null.
Parameter name: path1. trace:   at System.IO.Path.Combine (System.String path1, System.String path2) [0x00003] in <695d1cc93cca45069c528c15c9fdd749>:0
  at Thor.Procedural.ProceduralTools.CreateAsset (UnityEngine.Vector3[] vertices, UnityEngine.Vector3[] normals, System.String name, System.Int32[] triangles, UnityEngine.Vector2[] uvs, System.String albedoTexturePath, System.String normalTexturePath, System.String emissionTexturePath, Thor.Procedural.Data.SerializableCollider[] colliders, Thor.Procedural.Data.PhysicalProperties physicalProperties, UnityEngine.Vector3[] visibilityPoints, Thor.Procedural.Data.ObjectAnnotations annotations, System.Boolean receptacleCandidate, System.Single yRotOffset, System.Boolean serializable, System.Boolean returnObject, UnityEngine.Transform parent, System.Boolean addAnotationComponent, System.String parentTexturesDir) [0x00340] in <59daa9d85f214c32868d5228dfaf9b98>:0
  at UnityStandardAssets.Characters.FirstPerson.BaseFPSAgentController.CreateRuntimeAsset (Thor.Procedural.Data.ProceduralAsset asset) [0x00000] in <59daa9d85f214c32868d5228dfaf9b98>:0
  at (wrapper managed-to-native) System.Reflection.MonoMethod.InternalInvoke(System.Reflection.MonoMethod,object,object[],System.Exception&)
  at System.Reflection.MonoMethod.Invoke (System.Object obj, System.Reflection.BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x00032] in <695d1cc93cca45069c528c15c9fdd749>:0

Does anyone have any idea how to solve this? Thanks.

Could you try to pull the latest commit of AI2-THOR?


ESPHAPCamera example

Hi,
esp32 camera example appears security accessory in homekit and unfortunately, it never passes pairing section, although I enter 11111111 code.

First please use latest version/commit, than attach a log, I did never see a problem in 100 devices,
Sent from my iPhone

On 25 Apr 2021, at 07:17, Okan DÜZYEL @.***> wrote:

Hi,
esp32 camera example appears security accessory in homekit and unfortunately, it never passes pairing section, although I enter 11111111 code.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or unsubscribe.

First, is it homekit IP camera?

I use v1.1.0

Required that solution #89, otherwise, it doesn't compile.

I copied wolfSSL into the library folder and inside the ESPHAP folder.

Homekit recognizes that it is an alarm.

When it is at the pairing, the phone infinitely tries to pair but no answer from esp32.

At this moment, there isn't any log output that appears.

I didn’t catch about the serial log and why they can be collected, if device appears for the pairing , looks like a progress, but log should clear shows the problem during the pairing, for instance camera modules very sensitive for power, you can see that WD burn out is turning off, I found this is a common problem,
So beside of the log , try device with different (100% guaranteed) power source
Sent from my iPhone

On 25 Apr 2021, at 11:06, Okan DÜZYEL @.***> wrote:

First, is it homekit IP camera?
I use v1.1.0
Required that solution #89, otherwise, it doesn't compile.
I copied wolfSSL into the library folder and inside the ESPHAP folder.
Homekit recognizes that it is an alarm.
When it is at the pairing, the phone infinitely tries to pair but no answer from esp32.
At this moment, there isn't any log output that appears.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub, or unsubscribe.

First, is it homekit IP camera?

??

Please give more information about that project.

First, Is it homekit IP camera? If the answer is yes, Could you say snapshot resolution and streaming resolution?
Could you share a video or instruction on how to build and flash correctly?

No is not IP HomeKit camera, it’s only motion detection based on the camera, so you on the HomeKit you see motion detection, this is described in the reader
Sent from my iPhone

On 27 Apr 2021, at 13:18, Okan DÜZYEL @.***> wrote:

Please give more information about that project.
First, Is it homekit IP camera? If the answer is yes, Could you say snapshot resolution and streaming resolution?
Could you share a video or instruction on how to build and flash correctly?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub, or unsubscribe.


Added Pressed and Released events to the Gesture Manager

UI elements should have a pressed and release state to provide the correct about of visual feedback to users, typical to most current UI systems. The GestureRecognizer.RecognitionStartedEvent fires first when a finger and thumb come together and GestureRecognister.RecognitionEndedEvent fires last, after all other manipulation events. This allows the UI to provide a solid down visual state so that the user knows how their input is being interpreted.
This is building off the current pattern of SendMessage for OnSelect, OnGazeEnter and OnGazeExit.

Hi @killerantz, I'm your friendly neighborhood Microsoft Pull Request Bot (You can call me MSBOT). Thanks for your contribution!

It looks like you're a Microsoft contributor (Todd Williams). If you're full-time, we DON'T require a Contribution License Agreement. If you are a vendor, please DO sign the electronic Contribution License Agreement. It will take 2 minutes and there's no faxing! https://cla.microsoft.com.

TTYL, MSBOT;

Looks nice and clean, we'll give it a day for others to comment or I'll move it in. =)

I thought more about this and feel more convinced that the pressed and released should go into HandsManager.cs. Thoughts?

It looks like there's a lot of code that's duplicated in GestureManager and HandsManager involving hands.
What's the benefit of having the HandsManager if the GestureManager is handling the same kinds of things?  I like the gesture manager because it's handling more than just the hands and not filtering by InteractionSourceKind, keeping things a bit more generic.

GestureManager was designed for Gesture events. HandsManager is more for SourceDetected/Pressed/Released/Lost/Moved events.

I put it in GestureManager because that is where I'm getting the OnTap or OnSelected message. I use It in conjunction with OnTap most of the time, but when there's a gesture, I switch to using the ManipulationStarted and ManipulationEnded Events. RecognitionStartedEvent sounds like it is recognizing a source, in that respect it should go in the HandsManager. RecognitionStartedEvent actually fires when a gesture is recognized, so it's related to the GestureManager along with the pattern of sending interaction messages to the FocusedObject and replicating HoloLens input with the keyboard in the Unity Editor.
This should work with the clicker as well. I'll do some tests to make sure this works.
Part of the GestureManager that handles OnTap, which is a very broad event, it could come from any source. Like if I have two hands in front of the HoloLens tapping on a focused object. This seems similar, I just want to enhance the feedback for the tap.
For gestures, that lead to taps, it would be interesting to have some continuity between which hand (source) initiated the gesture and completed the tap event. With a more complex UI, there may be a need to eventually filter OnTap and gesture events by source id. So my element will only listen to input from one source. I've done some experiments with dual gestures. I could click on one object and start a manipulation, then click on another object and start another manipulation with another hand and keep both going over time. This kind of system seems more like what GestureManager is about. A place where I define a gesture pattern and it alerts me when that pattern is initiated. The OnTap, OnPressed, OnReleased, seem like a simpler system that doesn't care about which source fired the event.

@killerantz I agree with your reasoning for keeping recognition started events in the GestureManager class. My thoughts were more around should we use that Vs SourcePressed/Released.
Will take a look at the code once again!

@NeerajW Thanks for looking this over. I like the RecognitionStartedEvent and RecognitionEndedEvent because they are part of the GestureRecognizer (line 114). When focus changes, the GestureRecognizer is canceled (line 277) and RecognitionEndedEvent will automatically get fired in the process. So it really is tied into the GestureRecognizer and the reason I made sure the focused object was still in focus when the GestureRecognizer was cancelled in my last commit. For me, it's about the press and release of an interactive element, when focus changes, we are no longer pressing that element. This is different for a gesture manipulation, where we could be gazing at anything, while performing a gesture. In this case, we do not want to cancel InteractionManager when we gaze off an object to get the same results.
I really appreciate your time and thoughts on this. I'm open to another approach. The primary purpose is to provide a down and up state for an interactive element, while you are gazing at that element during an OnTap event.
For more context, as a UX person, I'm interested in defining clear states that will provide sufficient visual feedback to the user about how their interaction is being interpreted. The more subtle detail we can provide the quicker a user will pick up on the interaction patterns and adjust when they experience any friction.
On the cursor, I want to have feedback for non-interactive vs. interactive, which goes beyond just contacting something with a collider. The cursor should also react to sourceDetected from the HandsManager, as well as the down and up state from the GestureManager, especially if a button is not providing this feedback. I could tap on something that's not interactive, even then it would be nice to reinforce that the cursor is the source for tapping and the attempt was successful, but the element was non-responsive.
On a button or interactive element, we need to show Gaze, Pressed and Release, as well as selection with Gaze, Pressed and Released. This is to cover the basic interaction, of gazing on something and tapping it.
The next area I'm interested in is switching cursors, so that based on the type of object that is being gazed at, the cursor can reinforce the interaction pattern expected. Like an item that is clickable vs. an item that will kick off a gesture.
Lastly, I have a pretty good gesture system based on HoloToolkit and GestureManager, it handles the basics of kicking off a gesture, plus I'm able to test my gestures in the Unity Editor which has been helpful. Future thinking around gestures is having a more distinct link between source and gesture, so that we can provide feedback of the source or sources that have been detected and which of these sources are initiating interaction. Even looking at how a hand and clicker could work together or if one breaks the other. Some interesting questions are, does it matter which type of source (hand vs clicker) is providing interaction? When the hand is in view, it's obvious, but when the clicker rests out of view, do we need additional feedback for a clicker? The clicker rotates or pivots along different axes for input, while the hand moves directionally in 3D space, how should that feedback or hints for each case be handed?
Thanks again for looking at this (apologies for the log comment) hopefully this will give you more context into where I'm coming from and if things need to be reworked, I hope it will support the broader goal.

Sorry didn't mean to reference this to the other.
Comments on topic though, I really like @killerantz implementation and have to agree with the above.  Great work!

@killerantz thanks for explaining your scenario in depth. And your long term effort makes sense to me now. The key win with this seems binding to the tap gesture on focused objects whereas HandsManager will not take care of focused object aspects for you.
There's a script called CursorFeedback.cs that handles changing cursor assets etc. to give more visual feedback to the user about changing states. Check that out too!

Thanks @NeerajW , I'll check into CursorFeedback.

One thing I meant to add though, could we have made these new OnPressed/OnReleased delegate events sense they're new and potentially no one has used them yet?


Backport "Use the unwidened type when casting structural calls" to LTS

Backports #18527 to the LTS branch.
PR submitted by the release tooling.
[skip ci]

No regressions detected in the community build up to lts-18731.
Reference


:dependent => :nullify issue with default scope.

I have a model like this:
class Thing
  belongs_to :stuff
  default_scope order('foo DESC, bar DESC')
end

And another like this:
class Stuff
  has_many :things,
           :dependent => :nullify
end

And when I destroy the second model @stuff.destroy I get the following exception:
ActiveRecord::JDBCError: The ORDER BY clause is invalid in views, inline functions, derived tables, subqueries, and common table expressions, unless TOP or FOR XML is also specified.: UPDATE [things] SET [stuff_id] = NULL WHERE [things].[id] IN (SELECT [things].[id] FROM [things]  WHERE [things].[stuff_id] = 4 AND [things].[id] IN (73, 72) ORDER BY foo DESC, bar DESC)

Aside from not working this SQL seems needlessly complex and inefficient..
It does 3 queries (one to get the ID of the things which we dont really need to know) then it does subquery to get the IDs we've already got!!
Why not
UPDATE [things]
SET [things].[stuff_id] = NULL
WHERE [things].[stuff_id] = {INJECT stuff_id}

---
Want to back this issue? **[Post a bounty on it!](https://www.bountysource.com/issues/876457-dependent-nullify-issue-with-default-scope?utm_campaign=plugin&utm_content=tracker%2F136963&utm_medium=issues&utm_source=github)** We accept bounties via [Bountysource](https://www.bountysource.com/?utm_campaign=plugin&utm_content=tracker%2F136963&utm_medium=issues&utm_source=github).

Closing this because it is stale.


feat(html): add first, last, eq, len functions

While writing a transformation that would parse html doc into a dataset, I ran into some road blocks.
It seems like we have to have further discussion about exactly what format our html parsing library takes, (#7) but for now I've added skylark functions for:

first(), returns the first node in the Selection as a new Selection
last(), return the last node in the Selection as a new Selection
eq(int) (this is just called eq because that is what the underlying goquery calls it, open to renaming, but maybe should be called index. It returns a Selection from the node at the given index)
len(), returns the number of nodes in the Selection

can u post the transform file you're working with so we can see the context you're needing these funcs for?

def download(qri):
  r = qri.http.get("https://en.wikipedia.org/wiki/Jessica_Jones_(season_1)")
  if r.status_code != 200:
    error("error fetching site")
  html = qri.html(r.content())
  trs = html.find(".wikiepisodetable").children().children_filtered("tr")

  return extractRows(trs, True)

def extractRows(doc, keepHeader = False):
  rows = []
  ths = doc.first().children()
  row = []

  if keepHeader:
    for i in range(0, ths.len()):
      row.append(ths.eq(i).text())

    row.append("description")
    rows.append(row)
    row = []

  for i in range (1, doc.len()):
    if i % 2 == 0:
      row.append(doc.eq(i).text())
      rows.append(row)
      row = []
    else:
      ths = doc.eq(i).children()
      for j in range (0, ths.len()):
        row.append(ths.eq(j).text())
  return rows

def transform(qri):
  return qri.download


Fix dev task on package.json

Not sure if this is the right task to run on the dev script or if we could run just the default grunt task. Let me know :smile:

Thank you for submitting this pull request, however I do not see a valid CLA on file for you. Before we can merge this request please visit https://yahoocla.herokuapp.com/ and agree to the terms. Thanks! :smile:

CLA is valid!

Hi, sorry for missing this one. Looks like these changes are already in master now. Thanks for the PR!


[BugFix] fix NPE when further prune temp partitions

What type of PR is this：

[x] BugFix
[ ] Feature
[ ] Enhancement
[ ] Refactor
[ ] UT
[ ] Doc
[ ] Tool

Which issues of this PR fixes ：

Fixes #
Problem Summary(Required) ：

for (long id : candidatePartitions) {
       candidateRanges.add(rangePartitionInfo.getIdToRange(false).get(id));
}

NPE is caused by a null value being added in candidateRanges when the id is a temp parition id.
When there is a query for temp partition, we donn't need do the further prune process.
Checklist:

[x] I have added test cases for my bug fix or my new feature
[ ] This pr will affect users' behaviors
[ ] This pr needs user documentation (for new or modified features or behaviors)

[ ] I have added documentation for my new feature or new function

Bugfix cherry-pick branch check:

[x] I have checked the version labels which the pr will be auto backported to target branch

[x] 3.0
[x] 2.5
[x] 2.4
[x] 2.3

[FE PR Coverage Check]
:heart_eyes: pass : 3 / 3 (100.00%)
file detail

path
covered_line
new_line
coverage
not_covered_line_detail

:large_blue_circle:
com/starrocks/sql/optimizer/rewrite/OptOlapPartitionPruner.java
3
3
100.00%
[]

run starrocks_admit_test

@Mergifyio backport branch-3.0

@Mergifyio backport branch-2.5

@Mergifyio backport branch-2.4

@Mergifyio backport branch-2.3


Enables Nodeport Support For the Proxy Service

Adds optional NodePort Support for the proxy service
Motivation
When creating local kube clusters there are times where nodeports become more useful and easier to setup for testing than setting up the load balancer.
Modifications
Optional nodeport options were added for the http, https, pulsar, and pulsarssl services via the proxy
Verifying this change

[x] Make sure that the change passes the CI checks.

+1 on this PR , would be excellent to have this flexibility! @michaeljmarshall I've seen you tagged on similar areas , would you mind taking a look?

@apetti1920 Pleaer rebase and address the review comments

covered by #500


Fix #5019: Added channel up/downmixing code for mono/stereo.

@mfleisz No, this is raw pcm from a source, output might be adpcm but not input

@mfleisz it it's ok for you and tested any objection for merging?


[staging-next] python3Packages:*, fixes

Motivation for this change
fixing some python packages on staging next
Things done

[ ] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[ ] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[ ] Fits CONTRIBUTING.md.

httplib2 breaks roughly 200 jobs on darwin fyi.

I don't really have mac hardware, so a mac user will need to trouble shoot that

Result of nixpkgs-review pr 119819 at e737b158 run on aarch64-linux 1

7 packages marked as broken and skipped:

python38Packages.dask-ml
python38Packages.spacy
python38Packages.textacy
python38Packages.thinc
python39Packages.spacy
python39Packages.textacy
python39Packages.thinc

11 packages built successfully:

check-esxi-hardware
python38Packages.dask-glm
python38Packages.pywbem
python38Packages.uncompyle6
unrpa (python38Packages.unrpa)
python38Packages.xdis
python38Packages.yamlloader
python39Packages.dask-glm
python39Packages.pywbem
python39Packages.xdis
python39Packages.yamlloader

2 suggestions:

warning: maintainers-missing
Package does not have a maintainer. Consider adding yourself?
Near pkgs/development/python-modules/xdis/default.nix:27:3:
   |
27 |   meta = with lib; {
   |   ^

warning: no-python-tests
Test runner could not discover any test cases: ‘Ran 0 tests in 0.000s’
Near pkgs/development/python-modules/yamlloader/default.nix:29:0:
   |
29 |     description = "A case-insensitive list for Python";
   | ^

python3Packages.nassl is fixed by #119825

This is a semi-automatic executed nixpkgs-review with nixpkgs-review-checks extension. It is checked by a human on a best effort basis and does not build all packages (e.g. lumo, tensorflow or pytorch).
If you have any questions or problems please reach out to SuperSandro2000 on IRC.
Result of nixpkgs-review pr 119819 run on x86_64-linux 1

2 packages marked as broken and skipped:

python38Packages.textacy
python39Packages.textacy

1 package failed to build and already failed to build on hydra master:

python38Packages.dask-ml: log was empty

2 packages failed to build and are new build failures:

python38Packages.spacy: log was empty
python39Packages.spacy: log was empty

16 packages built:

check-esxi-hardware
lutris
lutris-free
lutris-unwrapped
python38Packages.dask-glm
python38Packages.pywbem
python38Packages.thinc
python38Packages.uncompyle6
unrpa (python38Packages.unrpa)
python38Packages.xdis
python38Packages.yamlloader
python39Packages.dask-glm
python39Packages.pywbem
python39Packages.thinc
python39Packages.xdis
python39Packages.yamlloader

going to clean up git history, just trying to get the keyring fixes in

i got more changes coming

Uh, build of python3Packages.poetry broke by merging this: https://hydra.nixos.org/build/141745307


Add shortcode to generate Feature gates tables

Added custom Hugo shortcode for Feature Gates table generation (Builds on https://github.com/kubernetes/website/pull/41793  - Switch to per-file feature gate descriptions).
Useful Links

Preview Alpha/Beta features | Current website table
Preview GA/Deprecated features | Current website table
Preview Removed Features | Current website table

Summary of changes

Added feature-gate-table shortcode for generating feature gates table.

The shortcode generates all the three tables: Alpha/Beta features, GA/Deprecated features, and Removed Features.

The shortcode also, validates the name of the stages (alpha/beta/stable/deprecated) and format of the version in the feature description file. The build will fail if any of those values is incorrect.

Modified the feature gate file description to include the following metadata in front matter:

stages:
- stage: <alpha/beta/stable/deprecated>  # Specify the development stage of the feature gate
  defaultValue: <true or false>     # Set to true if enabled by default, false otherwise
  fromVersion: <Version>            # Version from which the feature gate is available
  toVersion: <Version>              # (Optional) The version until which the feature gate is available

For removed feature gates, added removed: true in the markdown.

Updated documentation around how to use stages to include the feature gate information in the generated table.

Verification of changes

Verified the shortcode's functionality by comparing the HTML output of the generated tables using the new shortcode against the existing website tables. Ensured a match in the output, with the only difference being the use of "-" generated by the shortcode, while the original documentation uses "". (Refer: Below screenshot)

/cc @sftim
I would greatly appreciate your review and any feedback on this when you have the time. Thanks!

Hi.
Thank you - what a piece of work.
Would you be willing to split this into more commits? Here's how I'd do it:

Define the new shortcode, but don't use it anywhere yet.
Add the new metadata to all the existing feature gate files.
Switch the table generation to use the new shortcode.

/area web-development

/label tide/merge-method-squash
(OK to remove this label once each commit in the MR makes a meaningful change, and there are no fixups)

Would you be willing to split this into multiple commits?

I've divided this into separate commits as requested. Appreciate the prompt feedback and review!

Cool!
/lgtm


Migrate not primitives

Summary
Details and comments
Fixes #

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
166 unchanged lines in 14 files lost coverage.
Overall coverage increased (+1.3%) to 67.854%

Files with Coverage Reduction
New Missed Lines
%

qiskit_ibm_runtime/api/rest/utils/init.py
1
0%

qiskit_ibm_runtime/options/options.py
1
97.53%

qiskit_ibm_runtime/api/rest/runtime.py
2
27.66%

qiskit_ibm_runtime/options/utils.py
2
95.56%

qiskit_ibm_runtime/estimator.py
4
90.59%

qiskit_ibm_runtime/hub_group_project.py
4
85.42%

qiskit_ibm_runtime/api/clients/runtime.py
5
52.86%

qiskit_ibm_runtime/sampler.py
6
89.16%

qiskit_ibm_runtime/api/rest/utils/data_mapper.py
7
0%

qiskit_ibm_runtime/utils/json.py
7
93.49%

Totals

Change from base Build<PHONE_NUMBER>:
1.3%

Covered Lines:
3371

Relevant Lines:
4968

💛  - Coveralls

@beckykd can you address these comments in a separate PR? If it's easier I can also revert this PR and and then we can start a new one from scratch

@beckykd can you address these comments in a separate PR? If it's easier I can also revert this PR and and then we can start a new one from scratch

I can address the comments in a separate PR.


Collection observer is not working properly

I'm submitting a bug report

Library Version:
1.1.2

Operating System:
Windows 10

Node Version:
8.7.0

NPM Version:
4.6.1

Webpack Version
webpack 3.6.0

Browser:
all

Language:
all

Current behavior:
I am using collection observer to observe the changes in Array type dataSource. This triggers changeHandler callback , whenever I do changes in array by using push,pop,splice method.
But when I change an array with index like the below code snippet
let arr = [ {a:1}];
arr[0].a =2;

changeHandler callback function is not getting triggered. but view is getting updated.
Refer the below gist sample
https://gist.run/?id=437548a49d87f665ea6c1eb0ca725510
Expected behavior:
whenever the property gets changed, we expect callback method to get triggered for notifying the change.

As I said in gitter this has nothing to do with the framework.
vuejs got the same "problem"
there is no way apart from dirty checking to know that you assigned a new value to array element.
nothing observes it.
But guidance around this should be improved.
solution to your case is to use splice method of array
arr.spilce(indexOfElementToReplace,1, newValue)

Another way is to clone the current array, modify the clone and then assign the clone to the property.
const clone = this.myArrProp.slice(0);
clone[0] = clone[0]+ '4';
this.myArrProp = clone;

@mariaantony-gnanasekaran here is your gist modified to your needs
https://gist.run/?id=3f9e4c4013f1110597fff7599b8db048

can be closed


Once you create a custom pipeline config, you can't delete it.

version 0.25.0

Looks like a dupe of #1313.

closing as dup


Tenant qualify outbound requests from samlsso endpoint context

Describe the issue:
Should qualify outbound requests initiated from samlsso web endpoint with tenant in path.
Upon a request for this endpoint, the flow will redirect the user to a default logout endpoint or to a default error endpoint in 'authenticationendpoint' web application based on the flow.

Fixed


app crash on ios 9.3 when plug in start

Hello to all.
I just finished an application created with indel XDK.
the application is launched but when I go to start the plugin for scanning the barcode the app is closed.
The first time the system was launched asked permission for the room after which it is closed without giving errors.
What can I do to fix?
IntelXDK version: 3491
Cordova version: 5.4.1

Closing, inactivity. Please comment/re-open if you have more details.


Broken 353 and 366 /names replies sent for joined channels upon connecting to ZNC

When connecting to ZNC, I see plenty of messages like 353 mk-fg = #control +mk-fg being dumped into the server buffer by the client (one for each previously-joined channel), which seem to happen because ZNC sends lines like :353 mk-fg = #control +mk-fg for each channel that client joins.
I think correct IRC protocol would be to send 353 mk-fg = #control +mk-fg without that leading colon.
ZNC never sends NAMES to the server in question and generates these (broken) lines internally in CChan::AttachUser, so it looks like incorrect behavior on the part of ZNC itself.
Confirmed by seeing these lines coming from ZNC in wireshark: https://i.imgur.com/LmrdUGf.jpg
IRCd in question probably does something weird wrt its "[:source]" part of the messages (like not sending it in some cases), but that doesn't seem to be a violation of the IRC protocol, as "[:source]" is optional afaict, and maybe should be handled without breaking protocol on client connections regardless.
ZNC version: 1.7.2-1 (Archlinux package)
OS: Archlinux amd64 (latest, rolling release)

What's the IRC server that is used here? In the screenshot that you showed on IRC, there was a space after the colon and the 353.

In the screenshot that you showed on IRC, there was a space after the colon and the 353.

Don't think it's the case, exact hex + ascii for this, as copied from wireshark is:
0000   3a 33 35 33 20 6d 6b 2d 66 67 20 3d 20 23 63 6f  :353 mk-fg = #co
0010   6e 74 72 6f 6c 20 3a 2b 6d 6b 2d 66 67           ntrol :+mk-fg

And decoding it via e.g. python2 -c "print '3a 33 35 33 20 6d 6b 2d 66 67 20 3d 20 23 63 6f 6e 74 72 6f 6c 20 3a 2b 6d 6b 2d 66 67'.replace(' ', '').decode('hex')" yields :353 mk-fg = #control :+mk-fg - no space after colon.
Or am I misunderstanding specific space/colon place that you mean?

What's the IRC server that is used here?

It's my own script - https://github.com/mk-fg/reliable-discord-client-irc-daemon
So would appreciate if you can spot and suggest what it does wrong when that connection happens.
Obvious fix would be adding some dummy ":source" prefix to every line from server, but that looks like a workaround in this case, as mentioned in the initial report.

... there was a space after the colon and the 353.

Btw, do see CString sPre = ":" + m_pNetwork->GetIRCServer() + " 353 " + ... in Chan.cpp, which should add that space, and that code didn't change for a while according to git, so guess either that 353 isn't generated there, message gets mangled later, or Arch package changes that part.

It's my own script - https://github.com/mk-fg/reliable-discord-client-irc-daemon

Okay... I did not figure out what that uses to generate the 001s, but whatever.
My reading of RFC 2812 requires servers to send a prefix for all numerics (source: https://tools.ietf.org/html/rfc2812#section-2.4)

The numeric reply MUST be sent as one message consisting of the sender prefix, the three-digit numeric, and the target of the reply.

ZNC uses the prefix of 001 to figure out the server name, see the call to SetIRCServer in IRCSock.cpp. Since you send 001 without a prefix, the IRC server is set to an empty string. Then, when ZNC later "invents" numeric replies, it uses this empty server name as prefix and things go downhill from there.
ZNC could be more robust here (I guess using some default in GetIRCServer in case the current server name is empty), but I'd also say that relable-discorc-client-irc-daemon could send prefixes.

I can understand the confusion about the prefix being optional here because the previous section 2.3.1 says:

Each IRC message may consist of up to three main parts: the prefix (OPTIONAL), the command, and the command parameters (maximum of fifteen (15)).

However, "numeric replies" are specified as distinct from "messages" so the quoted "MUST" in 2.4 should  taken to mean the prefix is not optional in numeric replies.
This is definitely a bug with the discord bridge, but yeah, would be worth hardening ZNC.

I was mostly going by modern.ircdocs.horse when implementing that, where numeric-replies section says that they're non-special, and as such that part should be optional, guess I'll file a bug there.

Well, that part of modern is basically a copy/paste of the rfcs and has that same MUST. It could definitely be clarified, but it's not in conflict or incorrect.

Oh, you're right, sorry, I just read it and somehow missed the "MUST" part, my bad, definitely not incorrect.

I filed a clarifying PR for modern: https://github.com/ircdocs/modern-irc/pull/72

Thanks!


Add ppc64le support

@isuruf thanks for the pull - we solved it at the plugin side ;)
https://github.com/woodpecker-ci/plugin-git/releases/tag/v1.1.0
closed by https://github.com/woodpecker-ci/plugin-git/pull/8

Thanks @6543. What about the changes in Makefile?

@isuruf to what changes you refer to?

thats comming from https://github.com/woodpecker-ci/woodpecker/pull/408 - but will be changed since we like to address https://github.com/woodpecker-ci/woodpecker/issues/187 and similar to https://github.com/woodpecker-ci/plugin-git/pull/8