Audio only through headphones after starting recording session in iOS.

After starting and stopping audio session in iOS, the unity audio gets muted in iPhone internal speakers but if I connect headphones I can hear audio

Thanks for your feedback.
I not sure It's your bug, because I don't have headphones.
If you still work on this package, let double check it.
-> the issue is when we start to Speak when pre turn is not finished. => the line code don't work correctly if([speechSynthesizer isSpeaking])
-> To fix: add one more line on StartSpeak() function in SpeechUtteranceViewController.mm
 if([speechSynthesizer isSpeaking] == false) {


chore(Dependencies) : update elastic-apm-agent from 1.36.0 to 1.39.0

About this PR
📦 Updates co.elastic.apm:elastic-apm-agent from 1.36.0 to 1.39.0
📜 GitHub Release Notes - Version Diff
Usage
✅ Please merge!
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

⚙ Adjust future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "co.elastic.apm", artifactId = "elastic-apm-agent" } ]

Or, add this to slow down future updates of this dependency:
dependencyOverrides = [{
  pullRequests = { frequency = "30 days" },
  dependency = { groupId = "co.elastic.apm", artifactId = "elastic-apm-agent" }
}]

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

Superseded by #625.


Backstretch malfunctions in Android Default Browser.

The backstretch frontpage has black background in Galaxy Tablet (4.1.2), and shows the background as if it's top-left aligned, the rest of the background black, on Android 2.2.2 phone.

Were these issues with Android fixed or are they still there?


Add --metadata flag to dapr publish

Signed-off-by: Shubham Sharma<EMAIL_ADDRESS>Description
Adds a new flag --metadata to dapr publish that takes a JSON string as an input. It appends "metadata." to each key and passes the metadata as query parameters in the publish HTTP POST request.
Go-SDK is updated from v1.0.0 to v1.5.0 to use the new subscribe functionality. Earlier, raw payload was unsupported.
Issue reference
Please reference the issue this PR will close: #842
Checklist
Please make sure you've completed the relevant tasks for this PR, out of the following list:

[X] Code compiles correctly
[X] Created/updated tests
[x] Extended the documentation - https://github.com/dapr/docs/issues/2686

added docs issue to 1.9 milestone .. merging this PR


teams 1.1.11 get-csbatchpolicyassignmentoperation missing parameters

when trying this latest version of the teams module I noticed that get-csbatchpolicyassignmentoperation only now allows for  the status parameter, when i go digging into the module i see that there another function get-csbatchpolicyassignmentoperation1 which appears to hold the identity parameter.  Unfortunately when importing the module this function isn't imported. how can I use it?

+1 same issue. The command has no parameters other than -status
Get-CsBatchPolicyAssignmentOperation -OperationId 908131e5-022d-4322-9852-73df363ac5fb
Get-CsBatchPolicyAssignmentOperation : A parameter cannot be found that matches parameter name 'OperationId'.
At line:1 char:38

I found a workaround  that works umtil microsoft fix it (presented it to microsoft in a case)  in the Microsoft.teams.configapi.cmd let’s.psm1 files comment out line 48 and I comment line 43, when you import the module after this the secondary cmdlet get-csbatchpolicyassignmentoperation1 will be available and will give you the functionality you need. (P.s. make sure to do this in BOTH of the psm1 files with the same name

when trying this latest version of the teams module I noticed that get-csbatchpolicyassignmentoperation only now allows for the status parameter, when i go digging into the module i see that there another function get-csbatchpolicyassignmentoperation1 which appears to hold the identity parameter. Unfortunately when importing the module this function isn't imported. how can I use it?

Hello @woolfep how are you?
Remember that 2.0.0 is the current General Availability version and 1.1.11-preview is a Public Preview version of the Teams PowerShell module.
Said that, in 2.0.0 Get-CsBatchPolicyAssignmentOperation accepts Identity and Status as parameters, as the documentation states currently.
Hope this information helps you.

@get-itips  Thank you very much for the contribution and sharing this explanation. @woolfep  Hope this comment is helpful for you. If you see a documentation update is required, please feel free to open an issue for the same. We proceed here to close it. Thanks for taking out some time to open the issue. Appreciate and encourage you to do the same in future also.


Check in with club leaders and add their planned curriculum for this week  (10.19) to the Meetings sheet in https://clubs.hackedu.us

In progress, waiting for responses from 5 club leaders!

I have updated this from 9/12 clubs. Still waiting for responses 3 from club leaders. Closing because I don't think it's worth it for me to press them about curriculum.


field: Change Err to be exported on Descriptor

Addresses #1097
The "go run" integration tests are failing.

Thanks for the contribution @tmc. Please fix CI checks and I'll merge it - you need to run go generate ./... on entc/load before fixing these tests.

Great @tmc! Thanks a lot.


Subscribe to multiple symbols as in Pybit

Hello, can somebody suggest how (if) possible to subscribe to ticket_stream with the list of symbols as it's done in Pybit ?

ticket_stream

📝 It's ticker_stream, not ticket_stream

@austymenko
The function is already available.
https://github.com/hirokisan/bybit/blob/5c7e0bdb8ab8fbc82e66e162c8f6b0c7f3d8c974/v5_ws_public.go#L33-L36
Here is an example of use.
https://github.com/hirokisan/bybit/blob/5c7e0bdb8ab8fbc82e66e162c8f6b0c7f3d8c974/v5_ws_public_ticker_test.go#L59-L68

@hirokisan yeah, ticker_stream, my typo. In this example only one symbol SymbolV5BTCUSDT is used. Do you have example of the ticker_stream to listen for multiple symbols?

@austymenko

listen for multiple symbols

I understand what you are saying.
Now it supports a single Ticker in the form of a SubscribeTicker, but not multiple Tickers.
https://github.com/hirokisan/bybit/blob/5c7e0bdb8ab8fbc82e66e162c8f6b0c7f3d8c974/v5_ws_public.go#L33-L36
For example, it could be implemented this way.
yourFunc := func(response V5WebsocketPublicTickerResponse) error {
  assert.Equal(t, respBody["topic"], response.Topic)
  testhelper.Compare(t, respBody["data"], response.Data.LinearInverse)
  return nil
}
symbols := []SymbolV5{SymbolV5BTCUSDT, SymbolV5ETHUSDT}
for _, symbol := range symbols {
  _, err := svc.SubscribeTicker(
    V5WebsocketPublicTickerParamKey{
      Symbol: symbol,
    },
    yourFunc,
  )
  require.NoError(t, err)
}

@hirokisan thank you!, I will try.


Legion: Seg fault registering layout constraint

I'm seeing a seg fault registering layout constraints when the runtime is starting up. I have not changed the layout constraints so I'm not sure why its seg faulting. Here is a stack trace:
#0  0x000015554b6152a6 in Legion::OffsetConstraint::operator= (this=0xbd833529e37c66ed) at /lustre/scratch/vsyamaj/legion_s3d_subranks/legion/runtime/legion/legion_constraint.h:632
#1  0x000015554b615428 in std::__copy_move<false, false, std::random_access_iterator_tag>::__copy_m<Legion::OffsetConstraint*, Legion::OffsetConstraint*> (__first=0x1555547add26 <std::_Rb_tree<unsigned int, std::pair<unsigned int const, unsigned long>, std::_Select1st<std::pair<unsigned int const, unsigned long> >, std::less<unsigned int>, std::allocator<std::pair<unsigned int const, unsigned long> > >::_Rb_tree_impl<std::less<unsigned int>, true>::_Rb_tree_impl()+52>, __last=0x34363ff274417fe, __result=0xbd833529e37c66ed) at /cm/local/apps/gcc/9.2.0/include/c++/9.2.0/bits/stl_algobase.h:342
#2  0x000015554b60e0d3 in std::__copy_move_a<false, Legion::OffsetConstraint*, Legion::OffsetConstraint*> (__first=0x1555547add26 <std::_Rb_tree<unsigned int, std::pair<unsigned int const, unsigned long>, std::_Select1st<std::pair<unsigned int const, unsigned long> >, std::less<unsigned int>, std::allocator<std::pair<unsigned int const, unsigned long> > >::_Rb_tree_impl<std::less<unsigned int>, true>::_Rb_tree_impl()+52>, __last=0x34363ff274417fe, __result=0xbd833529e37c66ed) at /cm/local/apps/gcc/9.2.0/include/c++/9.2.0/bits/stl_algobase.h:404
#3  0x000015554b603680 in std::__copy_move_a2<false, Legion::OffsetConstraint*, Legion::OffsetConstraint*> (__first=0x1555547add26 <std::_Rb_tree<unsigned int, std::pair<unsigned int const, unsigned long>, std::_Select1st<std::pair<unsigned int const, unsigned long> >, std::less<unsigned int>, std::allocator<std::pair<unsigned int const, unsigned long> > >::_Rb_tree_impl<std::less<unsigned int>, true>::_Rb_tree_impl()+52>, __last=0x34363ff274417fe, __result=0xbd833529e37c66ed) at /cm/local/apps/gcc/9.2.0/include/c++/9.2.0/bits/stl_algobase.h:440
#4  0x000015554b5f470c in std::copy<Legion::OffsetConstraint*, Legion::OffsetConstraint*> (__first=0x1555547add26 <std::_Rb_tree<unsigned int, std::pair<unsigned int const, unsigned long>, std::_Select1st<std::pair<unsigned int const, unsigned long> >, std::less<unsigned int>, std::allocator<std::pair<unsigned int const, unsigned long> > >::_Rb_tree_impl<std::less<unsigned int>, true>::_Rb_tree_impl()+52>, __last=0x34363ff274417fe, __result=0xbd833529e37c66ed) at /cm/local/apps/gcc/9.2.0/include/c++/9.2.0/bits/stl_algobase.h:474
#5  0x000015554b5e1eb3 in std::vector<Legion::OffsetConstraint, std::allocator<Legion::OffsetConstraint> >::operator= (this=0x4414880, __x=...) at /cm/local/apps/gcc/9.2.0/include/c++/9.2.0/bits/vector.tcc:243
#6  0x000015554b5d25dd in Legion::LayoutConstraintSet::operator= (this=0x4414720) at /lustre/scratch/vsyamaj/legion_s3d_subranks/legion/runtime/legion/legion_constraint.h:746
#7  0x000015554bec6d51 in Legion::LayoutConstraintRegistrar::operator= (this=0x4414718) at /lustre/scratch/vsyamaj/legion_s3d_subranks/legion/runtime/legion.h:2553
#8  0x000015554beb54e4 in Legion::Internal::Runtime::preregister_layout (registrar=..., layout_id=1048577) at /lustre/scratch/vsyamaj/legion_s3d_subranks/legion/runtime/legion/runtime.cc:30112
#9  0x000015554ba0821b in Legion::Runtime::preregister_layout (registrar=..., layout_id=4294967295) at /lustre/scratch/vsyamaj/legion_s3d_subranks/legion/runtime/legion/legion.cc:8202
#10 0x00001555547a960e in S3DRank::get_fortran_soa_layout () at s3d_rank_mpi.cc:657
#11 0x00001555547acfac in RegisterCPUVariant<InitTemperatureTask, S3DTask<InitTemperatureTask, 3>, true>::register_variant () at s3d_task.h:810
#12 0x00001555547abdd5 in S3DTask<InitTemperatureTask, 3>::register_variants () at s3d_task.h:991
#13 0x00001555547a74ed in S3DRank::start_legion (this=0x4413c30) at s3d_rank_mpi.cc:143
#14 0x00001555547a651d in initialize_rhsf_legion_ (mechanism_name=0x645618 "C7H16_52species", local_grid=0x7fffffff9e24, global_grid=0x7fffffff9e30, proc_grid=0x7fffffff9e3c, proc_id=0x7fffffff9e48, vary_in_dims=0x7fffffff9e54, p_nvar_tot=0x888f7c <__param_m_MOD_nvar_tot>, p_n_spec=0x888f9c <__param_m_MOD_n_spec>, p_n_reg=0x888fa0 <__param_m_MOD_n_reg>, p_n_scalar=0x6455e4, p_iorder=0x888fb0 <__param_m_MOD_iorder>, p_iforder=0x888fb8 <__param_m_MOD_iforder>, p_n_steps=0x88cb28 <__runtime_m_MOD_i_time_end>, p_n_stages=0x4091620 <__rk_m_MOD_nstage>, p_lagging_switch=0x4091890 <__transport_m_MOD_lagging_switch>, p_lag_steps=0x4091894 <__transport_m_MOD_lag_steps>, p_npts=0x6455f8, p_tempmin=0x6455f0, p_tempmax=0x6455e8, cpCoeff_aa=0x155511dd4010, cpCoeff_bb=0x155511d08010, enthCoeff_aa=0x155511f6c010, enthCoeff_bb=0x155511ea0010, p_i_react=0x88cbe8 <__thermchem_m_MOD_i_react>, p_i_time_save=0x88cb1c <__runtime_m_MOD_i_time_save>, p_i_time_mon=0x88cb24 <__runtime_m_MOD_i_time_mon>, p_i_time_res=0x88cb20 <__runtime_m_MOD_i_time_res>, p_i_time_tec=0x88cb18 <__runtime_m_MOD_i_time_tec>, p_i_time_fil=0x88a9f0 <__filter_m_MOD_i_time_fil>, p_unif_grid_dims=0x7fffffff9e60, scale_1x=0x4236e30, scale_1y=0x41b93c0, scale_1z=0x41ebba0, reference_values=0x7fffffff9f40, periodic_flags=0x7fffffff9e70, bc_types=0x7fffffff9ea0, x_min=0x7fffffff9ec0, x_max=0x7fffffff9ee0, relax_ct=0x8893e0 <__bc_m_MOD_relax_ct>) at rhst_fortran.cc:130
#15 0x00000000005d3d49 in solve_driver (io=6) at /lustre/scratch/vsyamaj/legion_s3d_subranks/s3d/source/drivers/solve_driver.f90:194
#16 0x00000000005d36a2 in s3d () at /lustre/scratch/vsyamaj/legion_s3d_subranks/s3d/source/drivers/main.f90:131
#17 0x0000000000404b8d in main (argc=<optimized out>, argv=<optimized out>) at /lustre/scratch/vsyamaj/legion_s3d_subranks/s3d/source/drivers/main.f90:8
#18 0x00001555527746a3 in __libc_start_main () from /lib64/libc.so.6
#19 0x0000000000404bce in _start () at /lustre/scratch/vsyamaj/legion_s3d_subranks/s3d/source/drivers/main.f90:8

This looks like memory corruption to me. This is before we've even started Legion and we're trying to move an STL vector from one place to another. STL failures like this are almost always memory corruption. Usually when they happen so early in the program though they are not hard to find.

FWIW, LayoutConstraintSet::operator= isn't even code we've written, it is a compiler-generated operator implementation.

I tried running with valgrind and I'm seeing stuff like this:
==1908013== Conditional jump or move depends on uninitialised value(s)
==1908013==    at 0xD9DDA5E: std::vector<Legion::OffsetConstraint, std::allocator<Legion::OffsetConstraint> >::operator=(std::vector<Legion::OffsetConstraint, std::allocator<Legion::OffsetConstraint> > const&) (vector.tcc:224)
==1908013==    by 0xD9CF8E6: Legion::LayoutConstraintSet::operator=(Legion::LayoutConstraintSet const&) (legion_constraint.h:746)
==1908013==    by 0xE2982B4: Legion::LayoutConstraintRegistrar::operator=(Legion::LayoutConstraintRegistrar const&) (legion.h:2553)
==1908013==    by 0xE286AD5: Legion::Internal::Runtime::preregister_layout(Legion::LayoutConstraintRegistrar const&, unsigned long) (runtime.cc:30112)
==1908013==    by 0xDDDFA34: Legion::Runtime::preregister_layout(Legion::LayoutConstraintRegistrar const&, unsigned long) (legion.cc:8202)
==1908013==    by 0x585B977: S3DRank::get_fortran_soa_layout() (s3d_rank_mpi.cc:672)
==1908013==    by 0x585F369: RegisterCPUVariant<InitTemperatureTask, S3DTask<InitTemperatureTask, 3>, true>::register_variant() (s3d_task.h:808)
==1908013==    by 0x585E13E: S3DTask<InitTemperatureTask, 3>::register_variants() (s3d_task.h:989)
==1908013==    by 0x585984C: S3DRank::start_legion() (s3d_rank_mpi.cc:156)
==1908013==    by 0x585887C: initialize_rhsf_legion_ (rhst_fortran.cc:130)
==1908013==    by 0x5B3258: solve_driver_ (solve_driver.f90:194)
==1908013==    by 0x5B2BB1: MAIN__ (main.f90:131)
==1908013==  Uninitialised value was created by a heap allocation
==1908013==    at 0x4C9FD8B: operator new(unsigned long) (vg_replace_malloc.c:417)
==1908013==    by 0xE37993C: __gnu_cxx::new_allocator<std::_Rb_tree_node<std::pair<unsigned long const, Legion::LayoutConstraintRegistrar> > >::allocate(unsigned long, void const*) (new_allocator.h:114)
==1908013==    by 0xE36B191: std::allocator_traits<std::allocator<std::_Rb_tree_node<std::pair<unsigned long const, Legion::LayoutConstraintRegistrar> > > >::allocate(std::allocator<std::_Rb_tree_node<std::pair<unsigned long const, Legion::LayoutConstraintRegistrar> > >&, unsigned long) (alloc_traits.h:444)
==1908013==    by 0xE350C34: std::_Rb_tree<unsigned long, std::pair<unsigned long const, Legion::LayoutConstraintRegistrar>, std::_Select1st<std::pair<unsigned long const, Legion::LayoutConstraintRegistrar> >, std::less<unsigned long>, std::allocator<std::pair<unsigned long const, Legion::LayoutConstraintRegistrar> > >::_M_get_node() (stl_tree.h:580)
==1908013==    by 0xE327ED6: std::_Rb_tree_node<std::pair<unsigned long const, Legion::LayoutConstraintRegistrar> >* std::_Rb_tree<unsigned long, std::pair<unsigned long const, Legion::LayoutConstraintRegistrar>, std::_Select1st<std::pair<unsigned long const, Legion::LayoutConstraintRegistrar> >, std::less<unsigned long>, std::allocator<std::pair<unsigned long const, Legion::LayoutConstraintRegistrar> > >::_M_create_node<std::piecewise_construct_t const&, std::tuple<unsigned long const&>, std::tuple<> >(std::piecewise_construct_t const&, std::tuple<unsigned long const&>&&, std::tuple<>&&) (stl_tree.h:630)
==1908013==    by 0xE2E39C1: std::_Rb_tree_iterator<std::pair<unsigned long const, Legion::LayoutConstraintRegistrar> > std::_Rb_tree<unsigned long, std::pair<unsigned long const, Legion::LayoutConstraintRegistrar>, std::_Select1st<std::pair<unsigned long const, Legion::LayoutConstraintRegistrar> >, std::less<unsigned long>, std::allocator<std::pair<unsigned long const, Legion::LayoutConstraintRegistrar> > >::_M_emplace_hint_unique<std::piecewise_construct_t const&, std::tuple<unsigned long const&>, std::tuple<> >(std::_Rb_tree_const_iterator<std::pair<unsigned long const, Legion::LayoutConstraintRegistrar> >, std::piecewise_construct_t const&, std::tuple<unsigned long const&>&&, std::tuple<>&&) (stl_tree.h:2455)
==1908013==    by 0xE2B9A26: std::map<unsigned long, Legion::LayoutConstraintRegistrar, std::less<unsigned long>, std::allocator<std::pair<unsigned long const, Legion::LayoutConstraintRegistrar> > >::operator[](unsigned long const&) (stl_map.h:499)
==1908013==    by 0xE286AC0: Legion::Internal::Runtime::preregister_layout(Legion::LayoutConstraintRegistrar const&, unsigned long) (runtime.cc:30112)
==1908013==    by 0xDDDFA34: Legion::Runtime::preregister_layout(Legion::LayoutConstraintRegistrar const&, unsigned long) (legion.cc:8202)
==1908013==    by 0x585B977: S3DRank::get_fortran_soa_layout() (s3d_rank_mpi.cc:672)
==1908013==    by 0x585F369: RegisterCPUVariant<InitTemperatureTask, S3DTask<InitTemperatureTask, 3>, true>::register_variant() (s3d_task.h:808)
==1908013==    by 0x585E13E: S3DTask<InitTemperatureTask, 3>::register_variants() (s3d_task.h:989)

There is a full log here:
http://sapling2.stanford.edu/~seshu/s3d_stencil/valgrind.txt

I've been staring at this, trying to figure out how it's happening, and so far don't have anything.
Valgrind and the segfault are in agreement, so at the moment we have no reason to distrust what it's telling us. According to valgrind, this is the first error we hit, so there is no memory corruption prior to this point. I would also add that this is so early in the program that nothing in Regent has been initialized yet. We're all in C++ code at this point.
The line that valgrind reports agrees with what we saw in the crash:
https://github.com/StanfordLegion/legion/blob/a790370b366a86be395db13d78dc18364f4b8e98/runtime/legion/runtime.cc#L30112
Looks about as straightforward as it gets. operator[] allocates the map entry (running a default constructor) and operator= assigns to it.
The pending_constraint_table comes from a local static variable in this method:
https://github.com/StanfordLegion/legion/blob/a790370b366a86be395db13d78dc18364f4b8e98/runtime/legion/runtime.cc#L32029-L32037
Again, hard to see anything going wrong there.
So the only thing I can figure is the constructor is somehow bad... but if it is, I don't see it. The LayoutConstraintRegistrar here should implicitly default construct the layout_constraint field:
https://github.com/StanfordLegion/legion/blob/a790370b366a86be395db13d78dc18364f4b8e98/runtime/legion/legion.cc#L2107-L2112
And similarly LayoutConstraintSet has a constructor here that should implicitly initialize all fields:
https://github.com/StanfordLegion/legion/blob/a790370b366a86be395db13d78dc18364f4b8e98/runtime/legion/legion_constraint.h#L748
Just to be sure I wasn't getting the C++ semantics confused, I went and looked them up:

Default-initialization is performed in three situations: ... 3) when a base class or a non-static data member is not mentioned in a constructor initializer list and that constructor is called.
https://en.cppreference.com/w/cpp/language/default_initialization

So yeah, that should be fine.
The application code in question is also so simple that I can't see any way for it to be wrong, but I'll post it here in case @lightsighter sees something:
/*static*/ LayoutConstraintID S3DRank::get_fortran_soa_layout(void)
{
  static LayoutConstraintID layout_id = 0;
  if (layout_id > 0)
    return layout_id;
  // We haven't made the constraint set before so do it now
  LayoutConstraintRegistrar constraints;
  // This should be a normal instance
  constraints.add_constraint(SpecializedConstraint(NORMAL_SPECIALIZE));
  // Want fortran orldering of dimensions
  std::vector<DimensionKind> dim_order(4);
  dim_order[0] = DIM_X;
  dim_order[1] = DIM_Y;
  dim_order[2] = DIM_Z;
  dim_order[3] = DIM_F; // SOA: fields are least quickly changing
  constraints.add_constraint(OrderingConstraint(dim_order, true/*contiguous*/));
  layout_id = Runtime::preregister_layout(constraints);
  return layout_id;
}

So I'm thoroughly stumped at this point.

I guess MAX_DIM is set in 2 places in S3D and I only updated one of them.


Use the correct golint url (release-1.2)

Coverage remained the same at 33.484% when pulling 075d93057921b8ba0ab1decd32a7e4070a898939 on 1.2-fix-travis-lint into c3824a4bf932014ec23552e9b6fae98cceabe3bc on release-1.2.


Demos do not run in 1.2.2

After downloading the whole project as a .zip from GitHub, the .html files in demo folder do not run in 1.2.2 (angular missing?). It was OK in 1.1.
Besides, there are two ngGo.js files (one in root, one in release folder).

Yes please check the release notes for 1.2. I have deferred Angular to be installed via npm, so you can do npm install in the package folder to get Angular. Or you can change the demo html files to point to your own Angular install.
The ngGo file in the root is not right. I'll remove it, thanks for letting me know.


feat: export result types from main script

:tada: This PR is included in version 1.2.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


scala_2.9.1 build needed

Maybe scala-tools is no longer where you put the builds but I only saw a scala_2.9.0 version there.  I am guessing it is compatible but I would feel more confident with a 2.9.1 build up there as well.

It should indeed be compatible. The next release will include an official build for 2.9.1.

It would be great if there's a snapshot build available.


⚠ Bofrost.ch has degraded performance

In 47731c5, Bofrost.ch (https://www.bofrost.ch) experienced degraded performance:

HTTP code: 200
Response time: 4183 ms

Resolved: Bofrost.ch performance has improved in 207f765.


do not load analytics js if settings.google_analytics_id is blank?

There already is a PR for this :
https://github.com/helpyio/helpy/pull/532


[Ops] Support for reduce average op (ttnn.mean)

@chandrasekaranpradeep this one is unblocked. Can you confirm if it works? :))

@nvukobratTT There are two test cases in the forge/test/mlir/test_ops.py

test_reduce_mean
In this test cases, TTNN: Issues with ttnn implicit reshape is resolved
The below test cases alone is failing with pcc issue (PCC: 0.7203957195745748)
pytest forge/test/mlir/test_ops.py::test_reduce_mean[-1-input_shape2] -vss
test_mean
In this test cases, the FFE: Unsupported squeeze operation issue is resolved, now all the test cases here are failing with Unable to reshape a tensor in TILE_LAYOUT to non-tile height and width! Please convert the tensor to ROW_MAJOR_LAYOUT first. issue

@nvukobratTT Created a PR for reduce average op test cases - https://github.com/tenstorrent/tt-forge-fe/pull/349

Created a issue for the reduce average (i.e ttnn.mean) data mismatch
TT-MLIR - https://github.com/tenstorrent/tt-mlir/issues/869
TT-Metal - https://github.com/tenstorrent/tt-metal/issues/13621
Data Mismatch Failing Test cases:
Reduce_avg:
    Input_shape = (1, 12, 3200)
    dim = -1
    keep_dim = True
pytest forge/test/mlir/test_ops.py::test_reduce_mean[-1-input_shape2] -vss

Created a issue for the reduce average (i.e ttnn.mean) data mismatch
TT-MLIR - https://github.com/tenstorrent/tt-mlir/issues/869
TT-Metal - https://github.com/tenstorrent/tt-metal/issues/13621

@nvukobratTT  Reduce average op configuration (i.e Input_shape = (1, 12, 3200), dim = -1, keep_dim = True) is present in the Llama 3b model. Can we change the priority of the issue from P1 to P0?

In tt-metal latest main,  Unable to reshape a tensor in TILE_LAYOUT to non-tile height and width! Please convert the tensor to ROW_MAJOR_LAYOUT first. issue is resolved for test_mean pytest.
Once the tt-mlir is uplifted with latest tt-metal main, need to verify the issue is resolved in forge or not and update the test_mean

In tt-metal latest main, Unable to reshape a tensor in TILE_LAYOUT to non-tile height and width! Please convert the tensor to ROW_MAJOR_LAYOUT first. issue is resolved for test_mean pytest. Once the tt-mlir is uplifted with latest tt-metal main, need to verify the issue is resolved in forge or not and update the test_mean

Yup! I think uplift of this one is already WIP :)) We expect it to land soon.
Please keep track of it and test out this op accordingly :))

Yup! I think uplift of this one is already WIP :)) We expect it to land soon.
Please keep track of it and test out this op accordingly :))

Sure Nikola


ROX-26415: Remove install-specific URL data in telemetry

Description
Removes installation specific information from page tracking and event tracking when telemetry is enabled. This will remove:

The full url at which the event occurred
The page referrer for the event
Any URL search parameters that were present for the event

This will continue to save:

The full URL path relative to ACS where the event occurred (e.g. /main/vulnerabilities/workload-cves)
Specific search parameters that are explicitly tracked as part of a user event (e.g. applying a workload cve search filter)

User-facing documentation

[ ] CHANGELOG is updated OR update is not needed
[ ] documentation PR is created and is linked above OR is not needed

Testing and quality

[ ] the change is production ready: the change is GA or otherwise the functionality is gated by a feature flag
[ ] CI results are inspected

Automated testing

[ ] added unit tests
[ ] added e2e tests
[ ] added regression tests
[ ] added compatibility tests
[ ] modified existing tests

How I validated my change
Enable ACS Dev Instances telemetry against a cluster and trigger some events. The url, referrer, and search properties that can contain install-specific information should be blanked out in both the event context and the event properties.
Page view:

Manual event:

Closing until after discussion on the best way to handle this at the NA f2f.


Custom label function?

I'd like to show a custom label based on the value of the slider.
For example, my slider uses unix time stamps, and I want to show dates. Can I do this?

I've made fork and started working on this. I'll keep you posted!

@FezVrasta until #34 is accepted, you can try my fork here: https://github.com/Opentrace/react-rangeslider

Thanks, I used it just for a small side project so I don't really need it anymore.


Comment on Notes/updates.md (20-R6)

Please enter your comment:
I tried to go to the page via the link to the default .gitignore file link. It jumped to the error page of Page Not Found.
hope this helps.

thanks, it has been fixed in preproduction site, will be online after checking.


Targets to match one tag out of multiple

Is your feature request related to a problem? Please describe
I have a project with tag 'a' and a second project with tag 'b'.  Is it possible to create a target with tags where if either 'a' OR 'b' is matched, then the task runs?
projects:
  proj_a:
    tags: [a]

  proj_b:
    tags: [b]

targets:
  a_or_b:
    tags: [a, b]

tasks:
  some_task:
    target:
      tags: [a, b]

In this situation, mani run some_task says "no targets".  This is because the projects only have one of the two tags.
Describe the solution you'd like
Possible solution would be to list multiple targets on a task, and if one is a match, then the task is ran.
Additional context
Thanks for your time and consideration!

This should now be possible with 0.30.0 release:
Tag expressions allow filtering projects using boolean operations on their tags. The expression is evaluated for each project's tags to determine if the project should be included.

Operators (in precedence order):

(): Parentheses for grouping
!: NOT operator (logical negation)
&&: AND operator (logical conjunction)
||: OR operator (logical disjunction)
For example, the expression:

(main && (dev || prod)) && !test
requires the projects to pass these conditions:

Must have "main" tag
Must have either "dev" OR "prod" tag
Must NOT have "test" tag

So either specify it using `--tags-expr 'a || b' or specify it via a target.


Project Management page

This text needs to be added in a way that looks nice and is consistent with the other pages.
Slides 7-8 of the PowerPoint.

New PowerPoint slide 6.


[BUG] ISuiteListener#onStart(ISuite) disabling methods does not work

TestNG Version - 7.3.0
public class ExecutionListener implements ISuiteListener {
    @Override
    public void onStart(ISuite suite) {
        for (ITestNGMethod method : suite.getAllMethods()) {
            ((BaseTestMethod) method).setEnabled(false);
        }
    }
}

Expected behavior
Execution of all methods for the suite is disabled.
Actual behavior
All methods started
Is the issue reproductible on runner?
ALL

@shaburov - There are no exposed APIs using which TestNG guarantees that this can be done via the ISuiteListener. So this cannot be treated as a bug.
Now coming to the specific use case that your sample seems to be doing (i.e., disable tests), you should be using org.testng.IAnnotationTransformer to disable tests and not in this way. IMO there's nothing additional that needs to be done from TestNG side in this.
@juherr WDYT ?

I agree with @krmahadevan. ISuiteListener is too late in the process because test methods are already selected.
Maybe an exception should be throw by setEnabled when it won't have any effect.
IMethodInterceptor can be used or IAnnotationTransformer too, as proposed by @krmahadevan.

Do you have the described listener initialization scheme?
Example:
1 - IAnnotationTransformer
2 - IMethodInterceptor
<...>
15 - ISuiteListener
<...>

@shaburov - You might want to take a look at this test class ListenerInvocationDefaultBehaviorTest


Vertex AI Provider - remove legacy cloud scheduler implementation and migration code

Overview
Now https://github.com/sky-uk/kfp-operator/issues/284 has been complete the next step is to remove the legacy cloud scheduler code along with the code that was introduced to migrate existing schedules over to native Vertex AI scheduler.
Notes

all code should be removed for the cloud scheduler pipeline
all migration code should be removed
any configuration/deployment setup for run-intents etc should be removed
all documentation updated
any diagram updated with simplified setup

Duplicate of #285


rename EvictionCause to RemovalCause

In most caches(redis、caffeine and etc.), eviction means the entry is removed due to maxsize limit. But on_delete callback will be executed in all removal cases. EvictionCause can lead to a misunderstanding, RemovalCause should be a better name.

coverage: 100.0%. remained the same when pulling 47b2cccf4bf150f57982cdbc5c46b81629c5550f on uncle-lv:rename-EvictionCause into 51c88bae94405ea8289ea6ce9664ac6be858089f on dgilland:master.

Another reason is expired_count evicted_count deleted_count will be three different figures in statistics. But EvictionCause includes all three cases, what can lead to a misunderstanding too.

Updated usage.
Usage
set on_delete callback.
cache = Cache(on_delete=on_delete)

on_delete is a callable object.
Callable[[key: Hashable, value: Any, cause: RemovalCause],  None]

First parameter is the key of cache entry has been deleted.
Second is the value.
Third is the cause of cache entry removal.
RemovalCause is an enum.
class RemovalCause(Enum):
    DELETE = auto()
    SET = auto()
    EXPIRED = auto()
    FULL = auto()
    POPITEM = auto()

DELETE: indicates that the cache entry was deleted by delete() or delete_many() explicitly.
SET: indicates that the cache entry was replaced with a new value by set() or set_many().
EXPIRED: indicates that the cache entry was removed because it expired.
FULL: indicates that the cache entry was removed because cache has been full (reached the maximum size limit).
POPITEM: indicates that the cache entry was deleted by popitem().

Trigger
The table shows methods will trigger on_delete.

cause
trigger

DELETE
The cache entry was removed explicitly by delete() or delete_many()

SET
The cache entry was replaced by set() or set_many()

POPITEM
The cache entry was deleted by popitem()

EXPIRED
Implicit. When the cache entry was removed because it expired

FULL
Implicit. The  cache entry was removed because cache has reached the maximum size limit

⚠ clear() never triggers on_delete.


README.md: fix link to Go SDK section

Go SDK have been moved to another location:
https://github.com/open-policy-agent/opa/tree/main/internal/wasm/sdk
Signed-off-by: jun.gu<EMAIL_ADDRESS>

Thanks!


public.dhe.ibm.com no longer exists

When running the kitchen tests I get the following error:
         Errno::ECONNREFUSED
         -------------------
         Failed to open TCP connection to public.dhe.ibm.com:80 (Connection refused - connect(2) for "public.dhe.ibm.com" port 80)

         Cookbook Trace:
         ---------------
           /tmp/kitchen/cache/cookbooks/wlp/libraries/utils.rb:67:in `autoVersionUrls'
           /tmp/kitchen/cache/cookbooks/wlp/recipes/_archive_install.rb:31:in `from_file'
           /tmp/kitchen/cache/cookbooks/wlp/recipes/default.rb:56:in `from_file'
           /tmp/kitchen/cache/cookbooks/wlp_test/recipes/start.rb:18:in `from_file'
           /tmp/kitchen/cache/cookbooks/wlp_test/recipes/basic.rb:18:in `from_file'

         Relevant File Content:
         ----------------------
         /tmp/kitchen/cache/cookbooks/wlp/libraries/utils.rb:

          60:
          61:      def chown(file)
          62:        FileUtils.chown(user, group, file)                                                                                63:      end
          64:
          65:      def autoVersionUrls
          66:        require 'open-uri'
          67>>       version_yml  = YAML::load(open(@node['wlp']['archive']['version_yaml']))
          68:
          69:        use_beta = @node['wlp']['archive']['use_beta']
          70:
          71:        runtime_uri = ''
          72:        version_yml.each do |key, value|
          73:          if !use_beta && key.start_with?('8.5')
          74:            runtime_uri = ::URI.parse(value["uri"])
          75:            # The newest version is the first one listed so break out after the first
          76:            break

When I try accessing http://public.dhe.ibm.com in the browser, sure enough it's not accessible. Is there a new public location that this attribute can be defaulted to so the tests pass? Having this in place will make it easier for me to make a few pull requests with confidence that I didn't break any of the tests.

This might be a more pervasive problem. None of the downloads at WASDev are working.

This hasn't been a problem for a long time and was likely a short-lived outage.


Ambiguity in slicing with Ranges / WhateverCodes

On the surface, these two pieces of code do exactly the same thing:
$ perl6 -e 'my @a = ^10; dd @a[^Inf]'
(0, 1, 2, 3, 4, 5, 6, 7, 8, 9)

$ perl6 -e 'my @a = ^10; dd @a[^*]'
(0, 1, 2, 3, 4, 5, 6, 7, 8, 9)

But under the hood, they do very different things.
In the first case, the slice is produced from a Range 0..^Inf, so it will just produce values for the slice until the source is exhausted.
In the second case, the slice is produced from a WhateverCode:
$ perl6 -e 'my $a = ^*; dd $a.^name; dd $a(10).list'
"WhateverCode"
(0, 1, 2, 3, 4, 5, 6, 7, 8, 9)

Specifically, ^* codegens as { ^$_ }, which is effectively the same as ^(*-0).
So, what does one need to do if one wants to have a slice of all but the last values of a Iterable?  Well, this does not do the right thing:
$ perl6 -e 'my @a = ^10; dd @a[^*]'
(0, 1, 2, 3, 4, 5, 6, 7, 8, 9)

because that's the equivalent of doing:
$ perl6 -e 'my @a = ^10; dd @a[^10]'
(0, 1, 2, 3, 4, 5, 6, 7, 8, 9)

The next thing one could do, is to use the *-1 syntax:
$ perl6 -e 'my @a = ^10; say @a[^*-1]'
Effective index out of range. Is: -1, should be in 0..^Inf

This does not work, because:
$ perl6 -e 'dd (^*-1)(10)'
-1..^9

To make this work, one needs to use parentheses:
$ perl6 -e 'my @a = ^10; dd @a[^(*-1)]'
(0, 1, 2, 3, 4, 5, 6, 7, 8)

Issue https://github.com/rakudo/rakudo/issues/3010 indicates that a warning would need to be in place.  I'm not sure that that is the correct solution to this situation.
I think part of the underlying issue is the difference in codegen for:
$ perl6 -e 'dd 0..^*'
0..^Inf
$ perl6 -e 'dd ^*'
{ ... }

Perhaps we need to change the codegen for ^*.  In any case, any changes here are part of potentially very hot code, so any additional checks will slow things down for all.  In that vein, I also think that https://github.com/rakudo/rakudo/commit/35b69f074b9db3ffeb1638fc8a548fc2c0643d5a should probably be reverted.

So, what does one need to do if one wants to have a slice of all but the last values of a Iterable?

FWIW I think 0..*-2 is the most readable alternative.

It's not clear to me if you had a potential solution in mind or what it would be. Changing the meaning of ^* from { ^$_ } to ^Inf would scratch an itch I got from reading your comment, but not change any result of slicing with it.
About the commit

In that vein, I also think that rakudo/rakudo@35b69f0 should probably be reverted.

Which vein do you mean? Does it play on the ambiguity too much or do the changes slow things down? At least it does not introduce an additional check.
What I tried to do in that commit is remove the remaining observable difference in slicing with

the Range ^Inf,
the Range-lookalike WhateverCode ^*,
the definitely-WhateverCode 0..*-1 and
the WhateverCode-lookalike Range 0..^*.

Before, the last one would actually omit the last element in a slice and I still think this was just an off-by-one bug which was triggered in a corner case¹.
If I read * in a subscript, I'm thinking of .elems and slicing ^.elems will include the last element, like it did with the other three ways of writing superficially the same. If you want, the pun here is that it doesn't matter if you substitute Inf or .elems for * in the expression ^*. Both values are sufficiently large.
About the warning

So, what does one need to do if one wants to have a slice of all but the last values of a Iterable?

I'd write verbosely
@a[-> $elems { 0 .. $elems-2 }]

which becomes
@a[0..*-2]   # up to the second-to-last element
@a[0..^*-1]  # up to and excluding the last element

In any case, it's going to be a WhateverCode because ^Inf is still an infinite range, so it shouldn't omit the last element; ^* should just behave the same. Based on that, slicing with an excludes-max infinite range is a thinko which is what the warning would scold.
BTW, I would also prefer @a[^*-1] but precedence forbids that without parens or a preceding 0.. as you showed. That's slightly weird but in a way which is irrelevant to slices.
Where is the problem?
As I understand it and as you said, the issue involves &infix:<..^> vs. &prefix:<^>: how one treats * as Inf and the other turns itself into a WhateverCode instead, as well as their precedence against arithmetic. These properties feel too far apart for sibling Range-making operators, but I'm sure that has been brought up and explained before.
On the other hand, I do not think that this is a problem with slicing. The only source of ambiguity I see here are the types being sent to the slicer, but you don't want to lose these possibilities, and after rakudo/rakudo@35b69f0 I haven't seen an example where the result is discontinuous when you pass from one type to another by a little change of syntax (as in the list above).
Another ambiguity
Well, except this one:
say (1..10)[0 .. *];   #= (1 2 3 4 5 6 7 8 9 10)
say (1..10)[0 .. *+0]; #= (1 2 3 4 5 6 7 8 9 10 Nil)

But the solution to that, IMHO, lies in documentation.

¹ Namely
use nqp;
say nqp::eqaddr((0..Inf).max, Inf);  #= 1
say nqp::eqaddr((0..*).max, Inf);    #= 0

I agree with @taboege and I was also confused by the ticket, but didn't have time to write it down as nicely. @taboege++.

It's not clear to me if you had a potential solution in mind or what it would be

I don't have a clear picture on what would be a solution.
I see two issues: one is that 0..^5 is the same as ^5, and 0..^Inf is the same as ^Inf, but that 0..^* is NOT the same as ^*.  And from this all sorts of things start to become blurred.  And https://github.com/rakudo/rakudo/commit/35b69f0 is an attempt to fix one context of that discrepancy.
The other one is that:
use nqp;
say nqp::eqaddr((0..Inf).max, Inf);  #= 1
say nqp::eqaddr((0..*).max, Inf);    #= 0

There should not be a difference here.  Fixing this would fix what https://github.com/rakudo/rakudo/commit/35b69f0 is trying to fix, would it not?

0..^* is NOT the same as ^*. And from this all sorts of things start to become blurred. And rakudo/rakudo@35b69f0 is an attempt to fix one context of that discrepancy.

Agree completely.

There should not be a difference here. Fixing this would fix what rakudo/rakudo@35b69f0 is trying to fix, would it not?

No, it would make the first of the two changes in the diff unnecessary. If that commit was reverted entirely and the nqp::eqaddr(…, Inf) fixed, then

0..^* and 0..^Inf would return consistent results in slicing (thanks to the nqp::eqaddr being as consistent as … === Inf now – and maybe faster, I don't know) but what they would return is everything but the last element. Arguably not what you mean by 0..^Inf.
^* not being an infinite Range in a slice would turn into 0..^.elems and thus return everything. Arguably what you mean, but then something still has to be done about the visible difference between ^* and 0..^* slices, where the current WhateverCode behaviour of ^* feels more DWIMy to me.

I would say the first half of the diff should be reverted as soon as nqp::eqaddr(…, Inf) works and is faster than … === Inf. The second half of the diff says 0..^Inf should return everything and not everything but the last element. Whether that half should go depends on a decision on intended semantics.


No such file or directory:crypto/conf/conf_def.c:773:calling stat(fipsmodule.cnf)

When selective debugging specific tests that involve loading a provider via test/fips-and-base.cnf or the like, e.g.,
test/evp_libctx_test -config test/fips-and-base.cnf -provider fips

I often run into the annoying situation that I get
Error loading config from file test/fips-and-base.cnf
4087E970517F0000:error:80000002:system library:process_include:No such file or directory:crypto/conf/conf_def.c:773:calling stat(fipsmodule.cnf)
4087E970517F0000:error:07800069:common libcrypto routines:provider_conf_load:provider section error:crypto/provider_conf.c:90:section=fips_sect not found
4087E970517F0000:error:0700006D:configuration file routines:module_run:module initialization error:crypto/conf/conf_mod.c:242:module=providers, value=provider_sect retcode=-1

because the relative addressing .include fipsmodule.cnf in that config file goes wrong.
As doc/man5/config.pod states:
As a general rule, the B<pathname> should be an absolute path.  Relative
paths are evaluated based on the current working directory, so unless the
file with the B<.include> directive is application-specific, the inclusion
will not work as expected.  The environment variable B<OPENSSL_CONF_INCLUDE>,
if it exists, will be prepended to all B<.include> B<pathname>'s.

A workaround is to use, e.g., OPENSSL_CONF_INCLUDE=./providers.
IMO it is bad design to interpret the .include pathname relative to the current directory of the running application,
which makes the interpretation dependent on dynamic (rather than static) context and thus very fragile.
I suggest interpreting it instead relative to the directory containing the given config file (which is in this case test/).

With the suggested improvement of the .include semantics,
.include fipsmodule.cnf

in test/fips-and-base.cnf will become
.include ../providers/fipsmodule.cnf

Unfortunately it is not really possible to get the directory from the file. You'd have to track that somehow from the top-level config file opened and even that is quite problematic. If it was that easy it would be done already. It is documented to behave like this, so this is definitely not a bug but RFE.
Also as the existing semantics is already there and documented, we cannot change the semantics unconditionally.

Unfortunately it is not really possible to get the directory from the file. You'd have to track that somehow from the top-level config file opened and even that is quite problematic. If it was that easy it would be done already.

Hmm, isn't it possible to derive the directory of an opened file, e.g., from its handle?

It is documented to behave like this, so this is definitely not a bug but RFE.

Good point.

Also as the existing semantics is already there and documented, we cannot change the semantics unconditionally.

Ah, yes, the .include feature was introduced already in OpenSSL 1.1.1-pre3-dev, in commit b524b808a1d1ba204dbdcbb42de4e3bddb3472ac.
So when the suggested improved semantics is implemented, it would likely be better to rename the feature, maybe to #include or the like, and to deprecate the use of .include.
This way we could also get rid of the legacy = char, which is currently optional.

Hmm, isn't it possible to derive the directory of an opened file, e.g., from its handle?

No, it isn't. At least not on the POSIX systems - otherwise hardlinks would not be possible.

I see. Another possibility should be this string-based approach:
The code that opens e.g, test/fips-and-base.cnf knows this pathname.
It can chop the trailing file name and append instead the relative pathname of the file to be included, in this case ../providers/fipsmodule.cnf, which yields test/../providers/fipsmodule.cnf, which should lead to the right location ./providers/fipsmodule.cnf.

OTC: This won't be changed for 3.0.

#15090 that was merged has some possible way to solve this - We could pre-process the conf files during build to add the pragma to set the $(OPENSSLDIR) as the includedir.

Can't OPENSSL_CONF_INCLUDE be used to fix this?  I.e. just set that environment variable prior to running tests that use the pragma?


If the function called in map does not return anything, it will convert to a nothing, and call followup or elses

reference https://github.com/cbefus/optional.py/blob/master/optional/something.py#L30
if we map an example function that returns nothing (None) then we will create a nothing from something and any attached or_else etc. will be called.
Example:
def do_stuff(stuff):
    print(stuff)

Optional.of("Hello").map(do_stuff).or_else_raise(Exception("BOOM"))

This will print "Hello" but will also raise the "BOOM" exception!

This is hard to solve without a type system.

I think we have to assume this is working as designed. You should be using if_present with the do_stuff method.

Yes.  non-issue - my bad.


Proxy Deposits

It's often the case that the person who does the upload is not the person who actually has the legal rights to agree to the terms of the Deposit Agreement. An example is when a curator or research assistant uploads a dataset on behalf of a researcher.
The distinction between the rights-holding depositor and the proxy who performs the deposit should be reflected in ScholarSphere's abstractions. Some approaches:
depositor is just a metadata field; it can be set as needed by admins after the deposit.

Pros: That's how it works now; Technically simple.
Cons: Requires curators to manually fix records; no record of the depositor agreeing to the deposit agreement.

"Authorized Proxies" can create works on other's behalf

Pros: Feature exists in ScholarSphere 3, though unclear how much it's used.
Cons: Authorization should be revoked later; no record of the depositor agreeing to the deposit agreement.

Proxy (or anyone) can set alternate depositor but that person needs to agree to the Deposit Agreement to complete the deposit.

Pros: record of the depositor agreeing to the deposit agreement
Cons: complicates the deposit process and requires intervention from depositor.

There are data model implications with the above scenarios. Currently, in Scholarsphere 4, the depositor is the user record created when that user logs into Scholarsphere. Any works created are linked to that record. The concept of a proxy would complicate this model somewhat because the works created by the proxy would be linked to the proxy and not the user record considered to be the depositor. Furthermore, the depositor might not even be an actual user of Scholarsphere.
I think the above features should be implemented with certain data model changes. Such as:

removing the explicit linkage between User and Work models
re-defining User as an entity solely concerned with authorization within the application
model depositors and proxies in their own way

either extend Creator to model this information; or, create a new entities such as Depositor and Proxy
possibly rename Creator to Agent to evoke agent-as-creator and agent-as-depositor polymorphism

discuss other ideas

Migrate over the proxy deposit id which is the user. We have database changes, but when we create the proxy user then we need an actor record and need to make sure those are linked up.
We will not infer proxy deposits that are not explicit in the metadata.

Update
This issue only affects a very few number of works. There are only 61 works that have a proxy or "on behalf of" field in them. Of those, the majority of them all list the same user for depositor, proxy, and on behalf of.
Of those, there are only two that identify a proxy (i.e. proxy_depositor_ssim) different from the depositor:
sj139194f
4f4752g50f
And one that identifies an "on behalf of" user:
9306sz402
The impact of this is when the work migrated to Scholarsphere 4, only the depositor's information will be migrated. If we want to add the proxy information, we could add it manually. In the case of the "on behalf of" user, it's impossible to tell which user is the actual depositor because there is not proxy listed, and neither the listed depositor nor the "on behalf of" user are one of the creators.

This will be fixed in #622


[Feature request] Option to limit number of stack items on notification

https://github.com/heruoxin/Clip-Stack/issues/29#issuecomment-97509644 shows how Clip Stack will currently create very large notifications when there are multiple clips on the stack.
In conjunction with #27, I'm looking for more of a boolean "is there anything on the stack"-type notification, so I'd want the option to limit the notification to show just the top item on my stack and its actions. (Other people may only want the top 2 or 3 items.)

+1
Current Clip Stack occupies maximum 6 rows in notification. It makes the notification scrolling list too long. For me, a single row notification is preferred.


Is there a way of adding a custom prop to a component relying on system utilities (like responsiveness)

I'm trying to add a custom prop to Box (flexGrow). I would like flexGrow to inherit the benefits that other props have in smooth-ui system (in this case responsive behavior).
In styled system you would use https://github.com/jxnblk/styled-system/blob/master/docs/api.md#customize
Is there a way to extend Box to support the same?
Thanks!

No it is not yet possible but I think I would allow it soon.

v11 relies on xstyled currently it is not extendable but it supports all properties.


When saving Hardware settings, if we have previously supplied a email password it will be removed because the field is blank

This is now being reworked


Extra call script

A picture tells a thousand words

What was done

Senate script was added
House script was simplified

Still needs the Spanish translations


Initiation

Couple of comments.

Thanks, @antgonza ! If there is no problem with the update, merge it? I guess the policy should be that the author of a pull request is not supposed to do the merge.

I don't see any outstanding problems with this PR.  What needs to be done to merge this?

just merge it?
On Sun, Oct 11, 2015 at 7:29 PM, mortonjt<EMAIL_ADDRESS>wrote:

I don't see any outstanding problems with this PR. What needs to be done
to merge this?
—
Reply to this email directly or view it on GitHub
https://github.com/biocore/micronota/pull/2#issuecomment-147274797.

Note that we don't get a message when you do a new commit, except if you mention who should get it, for example @antgonza. Merging now.

:+1:
On Sun, Oct 11, 2015 at 7:37 PM, Antonio Gonzalez<EMAIL_ADDRESS>wrote:

Merged #2 https://github.com/biocore/micronota/pull/2.
—
Reply to this email directly or view it on GitHub
https://github.com/biocore/micronota/pull/2#event-432549623.


NPE in max() and min()

Using min or max on a list containing a null value will either produce a NPE or Option.none:
    @Test
    public void nullPointerExceptionInMinAndMax() {
        Integer one = 1;
        Integer zero = 0;
        Integer nullInteger = null;

        try {
            List<Integer> nullSecond = List.of(zero, nullInteger, one);
            nullSecond.min();
            nullSecond.max();
        } catch (NullPointerException e) {
            System.out.println("Boooo. Gives NPE but should give min == zero && max == one. Due to o1.compareTo(o2) in max and min");
        }

        List<Integer> nullAsHead = List.of(nullInteger, zero, one);
        System.out.println("nullAsHead.min() = " + nullAsHead.min());
        System.out.println("nullAsHead.max() = " + nullAsHead.max());
        System.out.println("Boo gives None in both situations. should give min == zero && max = one. Due to the fact: !(list.head() instanceof Comparable))");

        try {
            List<Integer> nullAtEnd = List.of(zero, one, nullInteger);
            nullAtEnd.min();
            nullAtEnd.max();
        } catch (NullPointerException e) {
            System.out.println("Boooo. Gives NPE but should give min == zero && max == one. Due to o1.compareTo(o2) in max and min");
        }
    }

I'm not sure about allowing null values. An alternative is to prohibit null as part of the interface documentation.
In native Java the min and max functions are only available in primitive Streams, like IntStream. My vision is to further restrict the types when future Java versions allow us to do so. Currently an extension of the type system is investigated as part of project Valhalla:

For now I suggest to filter the values in order to get sure null values are handled properly:
List.of(null, 0, null, 1, null) . filter(Predicates::isNotNull) . min();

I will update the min/max documentation accordingly.

I'm not sure about allowing null values. An alternative is to prohibit null as part of the interface documentation.
In native Java the min and max functions are only available in primitive Streams, like IntStream. My vision is to further restrict the types when future Java versions allow us to do so. Currently an extension of the type system is investigated as part of project Valhalla:

For now I suggest to filter the values in order to get sure null values are handled properly:
List.of(null, 0, null, 1, null) . filter(Predicates::isNotNull) . min();

I will update the min/max documentation accordingly.

I would ban null values everywhere, muhahahaha :trollface:
But if that's not possible, we should at least do something more meaningful than an NPE :/

Arithmetic operations should only process on defined element.
E.g. 1 + null is not 1. I would say it is undefined because our arithmetic has no notion for adding an element outside the set of ints to an int.
So why max(1, null) should be 1?
A healthy codebase does not implement additional logical branches for every special case and his dog :-) We should do it as straight forward as possible.
Therefore we will not include special null handling here.

I would ban null values everywhere, muhahahaha :trollface:

YEAH - and the user has to SUFFER if he uses null values, MUHAHAHAHA 👹

Even if max(1, null) shouldn’t be 1 it would be reasonable to assume that
max(1, null) would provide the same result/error as max(null, 1), wouldn’t it?
Eirik

On 14 Aug 2016, at 16:28, Daniel Dietrich<EMAIL_ADDRESS>wrote:
Arithmetic operations should only process on defined element.
E.g. 1 + null is not 1. I would say it is undefined because our arithmetic has no notion for adding an element outside the set of ints to an int.
So why max(1, null) should be 1?
A healthy codebase does not implement additional logical branches for every special case and his dog :-) We should do it as straight forward as possible.
Therefore we will not include special null handling here.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub https://github.com/javaslang/javaslang/issues/1482#issuecomment-239676496, or mute the thread https://github.com/notifications/unsubscribe-auth/AAezuzLM9W5N1CQ4oDvIrJiwA8VAkNXsks5qfyYjgaJpZM4Jh7WK.

@eirikm yes, that's right. We should throw something like an ArithmeticException in such cases. Thanks for the hint!

We can't easily intercept a min/max computation and map a NPE to an ArithmeticException. This is because min/max internally call minBy/maxBy, which take a custom Comparator. A custom Comparator can throw a NPE for another reason, so we can't catch the NPE and rethrow an ArtithmeticException.
Therefore we don't do it more complicated than it should be. Plain Java acts like this:
// throws NullPointerException
Stream.of(null, 1).min(Integer::compare);

// throws NullPointerException
Stream.of(1, null).min(Integer::compare);

We will act the same way. This is just one extra check in min()/max(), if the head element is null.

The simple solution works for all collections but TreeSet/RedBlackTree. Needs further investigation.
Btw - all SortedMap and SortedSet implementations should at least override min() because that is the head() element (if present).


Feature Request: Interpolate blinks in eyegaze / pupil channels.

Describe the new feature or enhancement
While I wrap up my open PR soon, I wanted to initiate a discussion on the next task that I'd like to work on for my GSoC project.
CC @larsoner and @britta-wstnr
Proposed function:
mne.preprocessing.interpolate_blinks (or remove_blink_artifact). For pupil channels
Background
it is a common pre-processing step in pupillometry research to interpolate missing values during blinks (see this paper, this paper, this package, and this package).
The basic idea is that blinks are very short in duration, but the pupil response is relatively slow; so it can be reasonably assumed that the pupil size during a blink was close to the pupil size values just before and just after the blink.
Use-case
Currently in mne, if you have a RawEyelink object with pupil channels, and you want to to assess the average pupil size across  trials, you have to:

epoch the data
drop any epochs that have a blink in them (which can result in data loss).
average aross the remaining epochs

This is because  pupil channels contain 0's during blinks. Including blink periods in epochs.average() would bias the result such that the the pupil size would seem to be unrealistically small!
Having an interpolate_blinks function would help users move beyond a Raw object to epoching the data and being able to use those epochs for analyses.
Describe your proposed implementation
I propose we add a function, called interpolate_blinks or remove_blink_artifact to mne.preprocessing.eyetracking.
How:
The way I am thinking about it now:

This function would accept a Raw object, and will rely on Annotations in the Raw object that start with blink to identify periods to be interpolated.

For example, mne.io.read_raw_eyelink extracts any blink periods (that EyeLink wrote to the file) and stores them as mne.Annotations. So this function would rely on those Annotations.

This function would accept a parameter named something like method, which would accept 'linear' or 'cubic_spline', and would use:

numpy.interp for linear interpolation
scipy.interpolate.CubicSpline for cubic-spline interpolation (see this eye-tracking paper).

Summary:
So I suggest that:

This function will only operate on  pupil channels (not eyegaze, EEG, MEG, NIRS etc.).
This function can start with interpolating data during blinks. Then maybe we can extend this to interpolating pupil data during saccades  (There is precedent for this because pupil-size measurement is thought to be less reliable during saccades).
Then, maybe we can extend this function to eyegaze channels  (There is one package that does this), but AFAIK it is harder to justify interpolating eyegaze data, because it can change at a much faster rate / is more variable across time. I'll need to do more literature review to see how often this has been done.

Describe possible alternatives
I'm open to any other ideas!
Additional context
To see an example of a file that could benefit from interpolate_blinks see:
from mne.datasets.testing import data_path
from mne.io import read_raw_eyelink
fname = data_path() / "eyetrack" / "test_eyelink.asc"
raw = read_raw_eyelink(fname, find_overlaps=True, create_annotations=['blinks'])
raw.plot(scalings='auto')

I like the suggestion to start with the basics (just interp during blinks) and expand later as needed/helpful for people. I'd suggest to put in mne.preprocessing.eyetracking.interpolate_blinks to make it clear it's eye-tracking-related interp, not to be confused with interpolating brain data or EOG during blinks or anything like that.

yes totally, sorry, I meant to say mne.preprocessing.eyetracking. !

I like it!

would be nice to add an option to pad data around the blinks - when you inspect blink periods in eyetracking data it's often corrupted just before/after the blink too. it's pretty common to leave some space around the blink that you also interpolate to account for this (which can vary between researchers). an option to allow this would be cool


[Request]Displaying a variable in the display menus

Right now, we can only show variables using the "display dialogue" feature. It would be awesome if we could also do this with the "Display menu" and "Display Multiple choice" options.
And if we could use if statements in the "Display Menu" to decide whether to show options based on player conditions. That way, we can keep things tidy and only show what's relevant at the moment.

can't you use if statements outside of "display menu", like "if X then display menu Y, else if Z then display menu A etc. etc."?

Yes that is how I am doing it, it just takes up a lot more time and space that way. It would make it so much simpler if it could be directly in the menu. That way if you have a long list of things that could be there it’d simplify it down.

The next version of GB Studio will have autocomplete for variables in single line text fields.
In the meantime, you can display variables in menu using $000$ where 000 is the variable index.
You can get the variable index by selecting a variable in the left sidebar and then click in the 🔽 icon of the variable editor.


Integrate ExoPlayer with Anvil layouts?

Hi,
one reason that has kept me from trying Anvil out more is that  almost everything I've worked on in the last year has included video playback with Google's ExoPlayer.
In case you are not familiar with it, ExoPlayer does not provide any Views itself but is instead attached to either a SurfaceView or a TextureView into which it then renders the video frames.
Do you have any ideas how one would integrate this in an Anvil layout? Is there a way to do it directly or do you think we'd need to wrap ExoPlayer and it's SurfaceView in some View of our own and then use that in Anvil?
Thanks for any suggestions!
David

override fun view() {
    textureView {
        val view: TextureView = Anvil.currentView()
        // instanceOfPlayer.renderInto(view)       <—— should work
    }
}


chore: remove renamed commit from 1.0.2

:tada: This PR is included in version 1.0.3 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


fix(android): Fix bridgeless mode support

Why
react-native-webview does not work on react-native 0.74 with bridgeless mode
How
there were two errors actually:

build error from override shouldStartLoadWithLockIdentifier(). the newer codegen supports Int32 and generates java code as int type. the current code is using double type. the pr tries to use double type as the implementation using double under the hood.
on bridgeless mode, we cannot access CatalystInstance. it seems react-native-webview used it for sending direct message. BridgelessReactContext does not have equivalent callFunction(moduleName: string, ...). this pr tries to register a single RNCWebViewMessagingModule module and check the underlying messagingModuleName inside the event. each webview will only receive events belong its messagingModuleName.

Test Plan

test example on android
test example on android (with bumping react-native 0.74 and newArchEnabled=true)
test on react-native 0.71 old architecture to make sure no regression

late response but much appreciated for the help from @Titozzz to get the fix published.

I believe this may have introduced a regression. #3368


Added Resources Page

For Issue: #27
Fixes:
Additions:

Resources link to the navbar in index.html
resources.html
css folder which contains two CSS files
Three images in the img folder

Checklist

[x] Ensured there is an open issue for your PR
[x] Added comments to additions
[x] Followed common formatting conventions for the contribution language
[x] Tested code to ensure original features are working

Select one:

[x] Ensured you are the contributer assigned to the Issue for this PR
[ ] Commented for ownership of an OPEN issue where no one is assigned or has yet asked to be assigned

Screenshots

@S3cBar0n, @thatrobotdev
Kindly review this PR
Due to the other PRs being merged first, I already had to resolve merge conflicts twice.

Sorry about the repeated merge conflicts, I'll take a look at this ASAP! Unfortunately I don't have more time to review PRs tonight, but I'll try to resolve any merge conflicts that prevent it from being merged so that you don't have to deal with the burden of updating your code change :D
Thank you so much for your contribution, I'm excited to take a look!


Badge component

Could borrow from Refills: http://refills.bourbon.io/components/#er-toc-id-3
Other examples:

https://lightningdesignsystem.com/components/badges/
https://getbootstrap.com/docs/4.0/components/badge/

Done in https://github.com/thoughtbot/design-system/commit/c671923f923fb1617dc3949e432bee2fed8bfe70.


⚠ St. Lawrence Global Observatory CKAN Sitemap has degraded performance

In 7590b8b, St. Lawrence Global Observatory CKAN Sitemap (https://catalogue.ogsl.ca/sitemap/sitemap-1.xml) experienced degraded performance:

HTTP code: 200
Response time: 6970 ms

Resolved: St. Lawrence Global Observatory CKAN Sitemap performance has improved in 453164c after 5 minutes.


Can't launch in Mac OS X 10.7.5

Unable to launch version of app that was released on 3/6/14 in Mac OS X 10.7.5

Also doesn't launch on Mac OSX 10.8.5 - iMac 27-inc, Late 2013
However, the release channel (TogglDesktop-7_1_201-2015-02-10-22-56-10) shows up in the Activity Monitor idling along at 22.MB Mem. The toggle.com downloadable as of current date not even that.
Giving up here.

rawland - this issue was about OSX 10.7
If the app wont start on a supported OSX (10.8.5), please send the app log files to<EMAIL_ADDRESS>You can find the log files in this folder:
/Users//Library/Application Support/Kopsik/production
You can also try to run the app from terminal, to see if it prints out some error message:
/Applications/TogglDesktop.app/Contents/MacOS/TogglDesktop

@tanel, yeah, I know. However, I found it via github-this-repo search and the description meets my observed behavior.
I'm not a Apple-boy and this was @work. If I don't forget it, I'll send you the log tomorrow from both.
Linux Mint runs smoothly. However, I am a bit suspicious, why a "simple logger" comes in with a 35.6MB installable deb-file, spawning 10 processes cruising along with a 80 MB memory footprint?  I'm happy, that this is open source, actually. Else I wouldn't trust it a bit. :-P

@tanel, yeah, I know. However, I found it via github-this-repo search and the description meets my observed behavior.
I'm not a Apple-boy and this was @work. If I don't forget it, I'll send you the log tomorrow from both.
Linux Mint runs smoothly. However, I am a bit suspicious, why a "simple logger" comes in with a 35.6MB installable deb-file, spawning 10 processes cruising along with a 80 MB memory footprint?  I'm happy, that this is open source, actually. Else I wouldn't trust it a bit. :-P


Word movement left and right not the same.

Description of the problem or steps to reproduce
When you press Alt+right arrow to jump words and then press Alt+left arrow it jumps into a different place.
e.g Alt+right arrow  - moves to spaces in the sentance below.
This is a test.
Alt+left arrow  - moves to first letter in the sentance below.
This is a test.
Specifications
Is this intended behavior or should it be first letter in the word for both directions.
Version: 1.1.5-dev.200
Commit hash: 4644a2b
Compiled on May 31, 2017
OS: Linux Arch
Terminal: Gnome

This is the intended behavior. I was copying sublime text in the behavior of this. I think it's good because often you press Alt-left to append to the current word (so the cursor should be put at the end). If the cursor is always placed at the beginning of the word then it's not possible to quickly jump to the end of a word.


How do I customize a variable so that I can use it in UNOCSS

How do I customize a variable so that I can use it in UNOCSS
less :
@primaryColor = '#000'
hello uno
or
custom variable
unocss :
hello uno

We temporarily close this due to the lack of enough information.
Please provide a minimal reproduction to reopen the issue.
Thanks.

Why reproduction is required

I guess you are finding extend theme


Change the icon of (i) that tells more info about the program.

Below is the as is.

you can use some like below :

Please inspect the Figma file and take the icon specifications from there.

This looks better .. can we change the location of the same. Like bring it down somewhere or make it much more smaller and put it next to the program name. Eg shown below :

@Ikpreet-Singh - This has been incorporated so closing this ticket on your behalf.


Add Zowe Explorer to zowe.org landing page

As someone interested in Zowe and working in modern IDEs, I would like to know about Zowe Explorer immediately upon entry to the zowe.org site.
Is your request for enhancement related to a problem? Please describe.
Currently Zowe Explorer is not listed among the "main components" of Zowe on the zowe.org landing page. With over 15,000 downloads and a great deal of use in several COBOL training courses, I think that Zowe Explorer qualifies as a particularly significant component to Zowe.
Describe the solution you'd like
Add Zowe Explorer with a brief overview of its functionality to the list of main components.
Related doc pages
zowe.org main page

+1 to this enhancement. Thank you for raising this issue! Also the demo video should be updated at the same time to show the Zowe Explorer UI.
adding @IgorCATech here

@nannanli Very true. We should prioritize this work in the future @zdmullen


https://tozo.dev - SSL certs have expired on november 8th

https://tozo.dev - SSL certs have expired on november 8th

The way I do keep up on my letsencrypt certs:

home server that has dnsrobocert running (its just uses certbot under the hood) - which keeps generating certs for all my domains using DNS-01 challenge.

Then there is a nightly cron that distributes certs to all the servers that need them.

Then there is uptime-kuma checking site uptime, and also you can configure ssl expiration check (just click the checkbox)

Thanks, I've updated.


[BUGFIX] Prevent Twig from swallowing whitespace between inline tags

resolves #922
I can only solve this by outputting &32; which equals a space. @wouterj is there any solution to force Twig to preserve a real space char?

I can only solve this by outputting &32; which equals a space. @wouterj is there any solution to force Twig to preserve a real space char?

It does not appear to be Twig who swallows the whitespace. If I try out this minimal example, the output is · (i.e. Twig renders it as a single space):
<?php

require_once 'vendor/autoload.php';

$loader = new \Twig\Loader\ArrayLoader([
    'test.twig' => '{{- value -}}',
]);
$twig = new \Twig\Environment($loader);

/** Small function to make whitespace visible */
function show_whitespace(string $text) {
    return preg_replace(['/\v/', '/\h/'], ["¶\n", '·'], $text);
}

echo show_whitespace(
  $twig->render('test.twig', ['value' => ' '])
);

I've always been a bit confused by how whitespace is handled in this project, the need for {% apply spaceless %} in some templates is also strange to me. I think we must identify which part of the NodeRenderer process is responsible for swallowing the whitespace.

I can render any sign but a space. I have no idea how twig works. Chatgbt told me it tries to get rid of superfluous spaces...

applyspaceless is needed in inline templates, because our id adds some such as an empty line at the end of each document. These would then get output, however bold: then becomes bold :

I'll find some time this weekend to see if I can find the troubling spot using the test case you added in this PR.

I've tracked down this issue to be a result of using the spaceless filter in paragraph.html.twig. I've refactored whitespace control to avoid using spaceless anywhere and taken your test from here in #944. We can close this as being replaced by the new PR.


Difference in the results by including a in the middle.

Thanks for this lightweight library for search :)
I'm currently prototyping an Astro/Starlight website which uses PageFind for its search. I've deployed a very rough prototype of migrating some existing documentation to https://zulip-help-center-search-starlight.netlify.app/.
When searching for the manage user search query, it gives the following results which are accurate.

But, when searching for manage a user, the page is somehow not in the top 20 results.

Looking at Starlight's codebase, it looks like they are using the library as-is. Pagefind version in Starlight: "pagefind": "^1.0.3".
Any help in explaining this behaviour will be appreciated, thanks!

I've tried upgrading to pagefind v1.1.0 locally and the problem still persists.

Ah interesting. Yeah this does highlight an issue with the current ranking system, I'll look to improve this.
To remedy this, you should be able to crank the termSimilarity setting way up. e.g.
new PagefindUI({
    element: "#search",
    ranking: {
        termSimilarity: 10 // or 20 or 100 or 1000
    }
});

Thanks for the reply! Increasing the setting made the results worse for me. In addition to that, increasing/decreasing the other settings also didn't help a lot.
But, I removed the stopwords in processTerm of the pageFind UI and it worked fine.

Reoping after noticing this excerpt from #48

Reason №2 is to improve search ranking, so that searching for the editor cares more about editor than the. Removing stop words altogether is a heavy handed way of solving this, and the planned implementation of word ranking with BM25 will de-rank the the automatically without needing to put it on a list, while still keeping it in the index.


Some problems

Hi,
I install VBench with pip, but I encountered some problems.

I encountered the following error when evaluating motion_smoothness:

At line 61 in vbench/dynamic_degree.py, line 110 in vbench/motion_smoothness.py and line 174 in vbench/utils.py, VBench only supports the 'mp4' format here.

Hi, thanks for reporting these issues.

The fix has already been updated to the master branch, it will be included in the newer pypi release. In the meantime, you can install it via pip directly from master branch.
We're currently working on adding support to read videos in .mov and video_path/{frame_number}.<png/jpg/..> format for all dimensions. If you have other video formats, please feel free to request.

Thank you very much. I find a similar problem when loading grit model in pypi release. Have you also resolved this?

The compiler require PyTorch > 2.0 in detectron2, but VBench require PyTorch < 2.0.

A fair suggestion is that as a benchmarking library, it should not depend on third-party libraries.

The compiler require PyTorch > 2.0 in detectron2, but VBench require PyTorch < 2.0. The detectron2 have updated their codes. Please refer to facebookresearch/detectron2@181aae3

Sorry for the inconvenience. According to the instructions at https://github.com/facebookresearch/detectron2/blob/main/INSTALL.md, you can use version 1.8 of pytorch.

The compiler require PyTorch > 2.0 in detectron2, but VBench require PyTorch < 2.0. The detectron2 have updated their codes. Please refer to facebookresearch/detectron2@181aae3

Sorry for the inconvenience. According to the instructions at https://github.com/facebookresearch/detectron2/blob/main/INSTALL.md, you can use version 1.8 of pytorch.

Thank you for your response. However, I believe the solution may not be applicable because torch.compile is a function that was introduced in PyTorch version 2.x. Please NOTE that detectron2 have updated their codes.

I attempted to integrate VBench into my project, but encountered difficulties due to its incompatibility with versions of PyTorch earlier than 2.0 :(

You can install detectron2 by using the following commands, which will align with the version we use and this version does not rely on torch.compile.
git clone https://github.com/facebookresearch/detectron2.git
cd detectron2
git checkout cc87e7ec
pip install -e .

At Line 151 in vbench/utils.py, 'Tensor' object has no attribute 'asnumpy'.

At Line 151 in vbench/utils.py, 'Tensor' object has no attribute 'asnumpy'.

It seems that decord will return a Tensor when evaluating multi dimensions.

I could not replicate this issue. Can you provide the packages version and run command?
It should not return a Tensor as it was already reset back to native at line 144.

@BeachWang Hi, we will follow up with your current questions in this issue. For future new questions, it would be great if you open a new issue. Thanks a lot!

I could not replicate this issue. Can you provide the packages version and run command? It should not return a Tensor as it was already reset back to native at line 144.

Hi, have you tested VBench with all dimensions in one dimension_list? I find it works well when I eval videos in dimensions separately. But when I eval videos in all dimensions with only one execution, the issue occurs.

I still cannot replicate the error. Can you give me the versions and run command? That will be helpful.

You can install detectron2 by using the following commands, which will align with the version we use and this version does not rely on torch.compile.
git clone https://github.com/facebookresearch/detectron2.git
cd detectron2
git checkout cc87e7ec
pip install -e .

Hi,
I met this cuda compilng error during installation:
        RuntimeError:
        The detected CUDA version (12.2) mismatches the version that was used to compile
        PyTorch (11.7). Please make sure to use the same CUDA versions.

Any idea if this can be installed with CUDA 12.2?

You can install with the latest version of detectron2 and remove these version rules from requirements.txt:
https://github.com/Vchitect/VBench/blob/fe06fcc93866630370ec6caccd82dcfb46fc22b6/requirements.txt#L5-L6
https://github.com/Vchitect/VBench/blob/fe06fcc93866630370ec6caccd82dcfb46fc22b6/requirements.txt#L27

same error

Seems to work fine for me.

I also encountered the same error message when installing detectron2 using

pip install detectron2@git+https://github.com/facebookresearch/detectron2.git

Compared with the pip list  @NattapolChan  shared, I have nvidia-...-cu11 instead of nvidia-...-cu12, while the actual CUDA verison I'm using is 12.
But it seems that nvidia-...-cu11 was automatically installed for me after running pip install vbench:

Collecting nvidia-cuda-runtime-cu11==11.7.99 (from torch<2.0.0,>=1.12->vbench)
Using cached nvidia_cuda_runtime_cu11-11.7.99-py3-none-manylinux1_x86_64.whl.metadata (1.6 kB)
Collecting nvidia-cudnn-cu11==<IP_ADDRESS> (from torch<2.0.0,>=1.12->vbench)
Using cached nvidia_cudnn_cu11-<IP_ADDRESS>-2-py3-none-manylinux1_x86_64.whl.metadata (1.6 kB)
Collecting nvidia-cublas-cu11==<IP_ADDRESS> (from torch<2.0.0,>=1.12->vbench)
Using cached nvidia_cublas_cu11-<IP_ADDRESS>-py3-none-manylinux1_x86_64.whl.metadata (1.6 kB)
Collecting nvidia-cuda-nvrtc-cu11==11.7.99 (from torch<2.0.0,>=1.12->vbench)
Using cached nvidia_cuda_nvrtc_cu11-11.7.99-2-py3-none-manylinux1_x86_64.whl.metadata (1.5 kB)

, while I don't see how I can remove torch<2.0.0,>=1.12 this requirement when installing vbench from pypi.
Would you minding shedding some light on this CUDA version mismatching problem?
How could I install nvidia-cuda-runtime-cu12 specifically when  running pip install vbench,
or is there any other way to adjust the nvidia-cuda-runtime version from 11 to 12?

You can install detectron2 by using the following commands, which will align with the version we use and this version does not rely on torch.compile.
git clone https://github.com/facebookresearch/detectron2.git
cd detectron2
git checkout cc87e7ec
pip install -e .

Hi,
I met this cuda compilng error during installation:
        RuntimeError:
        The detected CUDA version (12.2) mismatches the version that was used to compile
        PyTorch (11.7). Please make sure to use the same CUDA versions.

Any idea if this can be installed with CUDA 12.2?

You can use the requirements.txt from here.
Then after that you can install detectron2 using:
pip install detectron2@git+https://github.com/facebookresearch/detectron2.git

RuntimeError:         The detected CUDA version (12.2) mismatches the version that was used to compile         PyTorch (11.7). Please make sure to use the same CUDA versions.
Now I see the reason for this mismatching when installing with git clone.
For me, my server has cuda 12 yet torch 11.7 is installed in my old conda env. My solution to this is:

Create a new conda env
Install torch and torchvision from https://pytorch.org/ with corresponding cuda version, i.e. 12
Remove torch and torchvision from the requirements.txt @NattapolChan provided.

This removal is very important, or later the installation will try to uninstall torch12 and install torch11.7 instead.

Run the command: pip install -r VBench/requirements.txt
Run the command for install detectron2: pip install detectron2@git+https://github.com/facebookresearch/detectron2.git
Finally, run the command: pip install VBench

For the last step, it will trigger the execution of setup.py inside the VBench directory. The fetch_requirements() only filters out lines that contain "@"; So, if torch and torchvision is not properly removed from the requirements.txt, the previous installation will be covered by the install_requires during the setup process.

*In setup.py:
def fetch_requirements():

    filename = os.path.join(os.path.dirname(os.path.realpath(__file__)), 'requirements.txt')

    with open(filename, 'r') as f:

        envs = [line.rstrip('\n') for line in f.readlines() if '@' not in line]

    return envs


[IGNORE]

Fixes #6 by introducing 2 breaking changes:
1. Teams webhook rejections are no longer silently ignored
Because they looked like success from the HTTP 200 response codes, webhook rejections weren't triggering as errors. As a result, this process wouldn't fail, and automation would look successful. Now the process will correctly terminate with a non-zero exit code, and the error can be captured for logging.
Previously:

Now:

2. Limit leaderboards to 10 players (configurable).
The Teams webhook has a max message size of only 28 KB. In my troublshooting I was finding that as few as 15 players could reach this threshold with only 2 days of stars. Presumably with 24 days of stars we'd hit the limit with even lower player counts. So I introduced a max limit of 10 players for display in Teams, and made it a configurable limit with LEADERBOARD_LIMIT. A link to view more players is provided if leaderboard linking is enabled. For leaderboards with less players than the limit, the extra trailing row and link will not display:

Ooof, created from wrong branch. Disregard


Can’t remove the value of system properties for HNS blobs

Storage Explorer Version: 1.6.0
Platform/OS Version: Windows 10/ MacOS High Sierra/ Linux Ubuntu 16.04
Architecture: ia32
Build Number: 20181130.7
Commit: 98b890fc
Regression From: Not a regression
Steps to Reproduce:

Expand one ADLS Gen2 account -> Open one blob container.
Right click one blob then select 'Properties...' -> Input a value for one system property then save it.
Reopen the Properties dialog -> Try to remove the added value in step2 then click Save.
Reopen the Properties dialog -> Check whether the value is removed or not.

Expected Experience:
The value has been removed successfully.
Actual Experience:

The value still exists.
There shows 'Successfully saved properties for path [blob_name]' in Activities.

Verified with build 20181204.3. This issue doesn't reproduce. Could you help to resolve it?

Doesn't repro anymore.


Add Multicast Programming Sample

@aphage : Thanks for your contribution! The author(s) have been notified to review your proposed change.

Hi, @aphage, and thanks for this contribution. I've asked an SME to give it a review, so we'll wait for that before completing the PR.
Thanks again!
-Steve

This sample seems very specific to a certain use case (which is unclear since there is no PR description or high level code comments). I would hesitate to add this to an existing msdn page that simply describes how to join and leave multicast groups.
@aphage can you at least state what is being accomplished in the sample code?
If the usage is not general enough to add to msdn pages, maybe it would be better suited in the WinSock SDK samples repo
https://github.com/microsoft/Windows-classic-samples/tree/master/Samples/Win7Samples/netds/winsock

"consumer" traverse the network card to join the multicast address <IP_ADDRESS> monitor port 7777, receive data
"producer" traverses the network card and sends a string message of "Alice foo foo !" to the multicast address <IP_ADDRESS> port 7777
I think there are 3 points to note

Socket bind, Windows cannot bind multicast addresses, such as bind(<IP_ADDRESS>), Linux can work, Windows needs to bind like ordinary sockets, such as bind(<IP_ADDRESS>)

When there are multiple network cards, if the IP address of the network card is not specified "mreq.imr_interface.s_addr = htonl(INADDR_ANY); ", one of the network cards is selected by default, so it may happen that multicast messages cannot be received or not sent out

When using IP_ADD_SOURCE_MEMBERSHIP, imr_sourceaddr cannot be INADDR_ANY, at least for Windows

From looking at the code it looks like the "consumer" portion is joining a particular multicast group on all interfaces of the machine and doing a receive loop, while the "producer" portion is sending out a message destined for the same multicast group from each interface of the machine. These might be reasonable examples that others can benefit from. However, I would highly encourage you to open a PR in the Windows API samples repo as I think it would be a better fit.
https://github.com/microsoft/Windows-classic-samples/tree/master/Samples/Win7Samples/netds/winsock

What do you think, @aphage? It'd be great if you could contribute to a samples repo, as @nigriMSFT advises.
Are you ok if I go ahead and close this pull-request?
Thanks!
Steve


Tesseract and ocrmypdf: High CPU Usage and memory RAM

Hello,
Tesseract and ocrmypdf are consuming a lot of processing and RAM in Alfresco.
Can you tell me, if there is any configuration I need to do?
Alfresco version: 6.1.1
With best regards,
José Roberto

I'm afraid nobody here can help you as we don't know that third party software. Please ask the Alfresco people or try to find the answer yourself.


Terraform: OpenStack Support

Description
Scaffolding project currently only supports GCP Terraform provider. We want (@developer-guy) to provision a full sigstore stack on OpenStack. Does it make sense to create a new folder called openstack in the terraform folder to drop all related modules in there?
Of course, we can extend the supporting list in the future:

AWS
VMware Cloud Director
Azure
Alibaba
Azure
etc.

@Dentrax yes, follow the same pattern that we have for gcp :)
that sounds a nice improvement

Going to close this as there has been no progress. If someone would like to pursue creating infrastructure for other cloud platforms, feel free to reopen this or create a new issue.


readme: fix flow logs example

Fixes an invalid type in the example for VPC flow logs, where map(string) is used when the actual variable is a string.

/test all


Metrics calculation source code

Good afternoon!
Thank you very much for publishing the source code! You have done a great job and proposed a very interesting SLAM approach.
I am particularly interested in your approach to map quality evaluation, it seems to me it is very promising. I would like to reproduce your metrics and evaluate other mapping algorithms.
Could you please share the source code for map quality estimation?

Thank you very much!
Yes, evaluating quality is indeed a non-trivial task. I think the problem is that the map is an abstraction, a model. The very idea of the map implies that we have omitted some details and left what is important for solving the problem. And so the question about the quality of the map makes sense only in the context of this task.
And, when we try to assess the quality of the map without defining the task, we are trying to determine how good it is for any possible task - that is, how accurate a copy of reality it is :)
From this point of view, since we are building an "absolute" model, probably a good criterion of quality is the customizability/convertibility/interpretability of our model - how easily we can turn an "exact copy" into a "model" corresponding to any task. Although this is a question of the representation model of the map itself, not the specific instance.


Form selection

The af and if objects selects forms
The aF and iF objects select top-level forms.
Why
Replicate vim-sexp Text Object Selections
Clojure uses multiples types for surrounds ( { [ being able to refer to each with just f/F makes text manipulation within Clojure much easier.

di( -> dif
di[ -> dif
di{ -> dif

Expected behaviour
Current form

(+ 1 1) (Cursor anywhere within expression)
dif
() deletes everything within form

Top level form

(+ 1 (+ 2 3)) (Cursor within sub form)
diF
() deletes everything within top level form

Agreed this will be useful to have, and should be straight forward to add. Will get around to it when I have a moment :)

Just a note that I don't think there's a way to select root elements / forms still. So there's no vaF to select a whole defn for example. If I'm right in that assumption maybe I can add it soon.

You'll have to ignore the Fennel and custom macros for exporting values from the Lua module, but here's what I use in Conjure to select the root form in tree sitter across multiple languages. https://github.com/Olical/conjure/blob/58c46d1f4999679659a5918284b574c266a7ac83/fnl/conjure/tree-sitter.fnl#L77-L87
So this may be a good template to rip off to get started with.

Ah you are right I forgot about the root form selections. Shouldn't be too difficult to add, if you want to take a stab at it go ahead :)
Otherwise I can look into it when I get a moment.

I'm working on this at the moment but a heads up that the tests seem to fail for the slurp/barfing in the Neovim nightly build. I swapped to stable and they run just fine.

Ok I actually just disabled nightly for now and merged that PR. Running just test will now use stable.

Nice, rebased my changes on this and opening a PR with my first pass now. I have selections and deletions working, will probably add more tests, may need to add more methods for visual selections too, mostly focussed on deletions so far.
Also you may find this useful: https://github.com/Olical/nfnl/blob/main/.github/workflows/test.yaml
It's my GitHub action tests I use to run Plenary Busted (like you do) in GitHub Actions across multiple Neovim versions. The downside is that it doesn't work locally the same way, I run the tests in whatever Neovim version I have installed locally.
Just thought I'd share in case you liked the way you can just add version numbers to the list.


Issue on cars stoping at green traffic lights and running red lights with timers set

Describe the problem
Hello, as discussed on Steam, I share you here what you asked for.
My first message on Steam : "Hi, very good mod, but I just have one little problem: when I set timers for different states on my traffic lights, some cars stops suddenly while it's still green for them and then start again, even running red lights. Any idea how to solve it? Thx :)"
Steps to reproduce

Log files

output_log.txt
Savegame?

https://steamcommunity.com/sharedfiles/filedetails/?id=2038271141
Screenshots?

Notes or questions?
Thank you in advance :)

Hi again, maybe I'm wrong but I think my problem is quite simple in fact: I had not activated the option allowing vehicles to enter blocked junctions, that could explain.

Yes, Allow vehicles to enter blocked junctions is the right option to solve that issue. You can also apply it for particular junction using Junction restriction tool


Make en-us goto dialog resizeable

This is really a follow on from #122 , in a cut down form while preserving the "full" change in the original PR.

This uses DWLP_USER for the dialog context.  I'm a little uncomfortable with this because there's no way to "allocate" this space, it's just assuming nothing else is using it.  But it appears to work.
Removes the VerifyResources change, so now VerifyResources will complain.
Scopes it down to the minimal possible thing, randomly picked to be the en-us goto dialog, since making that scale to larger numbers of matches appears to be a theme, so being able to maximize it can help it be usable with more matches.

Looks good to me.
Shouldn't we apply this to all languages?

As you've seen, my personal approach is to have larger and more comprehensive changes, so I think it should apply to all languages.  It's done this way because Craig was advocating for the smallest initial commit, which I think is something like this.  That has consequences (VerifyResources won't be happy.)
In theory, this code doesn't care:

For the most part, if the dialog style is not resizable, resize events will just never be sent.
This code uses hidden controls to determine placement of later controls.  If the controls aren't present, this code has nothing to do.
About the only "interesting" case is RenderSizingGrip and IsWithinSizingGrip where it looks at the window style to determine whether to display the grip; but since this is based on the window style, the code should work if invoked from a dialog which is not resizable according to its style.

I see. As far as I got Craigs concern in #122, it was mainly about storing RESIZE_DIALOG_INFO not stored with the window.
You now solved this by using DWLP_USER, which sounds a good solution to me.
I think the minimal complete solution contains all languages:

If it works, we are fine, no nextra PR needed
We have more people to test this
If we fail it is the same effort to revoke with one language or many

So ;-) .... Be brave, lets change the languages too.


ImportError: cannot import name MuninPlugin

Hi, developer!
Thanks for your munin plugins. As I git clone your plugin and install it use easy_install.But in the interactive show error there
    root@saltserver:~# easy_install python-munin/
    Processing
    Writing /root/python-munin/setup.cfg
    Running setup.py -q bdist_egg --dist-dir /root/python-munin/egg-dist-tmp-IWIeAi
    zip_safe flag not set; analyzing archive contents...
    munin 1.4 is already the active version in easy-install.pth

    Installed /usr/local/lib/python2.7/dist-packages/munin-1.4-py2.7.egg
    Processing dependencies for munin==1.4
    Finished processing dependencies for munin==1.4

    >>> from munin import MuninPlugin
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
    ImportError: cannot import name MuninPlugin

Could you help me in this matter? Thanks!

Hey,
Thanks for your help @josephmisiti , this is working with :
python setup.py install


ValidationError(Deployment.spec.template.spec.nodeSelector)

Output of helm version: 3
Output of kubectl version: 1.25.2
Cloud Provider/Platform (AKS, GKE, Minikube etc.):  EKS
Hello I have the following error in the helm chart
I created a file with the variables > values.yaml
nodeSelector: homologacao
In the deployment.yaml file
{{- if .Values.nodeSelector }}
nodeSelector: {{ .Values.nodeSelector }}
{{-end }}
But I am getting the following error:
Error: UPGRADE FAILED: error validating "": error validating data: ValidationError(Deployment.spec.template.spec.nodeSelector): invalid type for io.k8s.api.core.v1.PodSpec.nodeSelector: got "string", expected "map"

Oops, this one slipped through the cracks.
Probably a bit late but it says right there what you need to do. Replace the string value with a map:
nodeSelector:
   node-type: pineapple

see: https://kubernetes.io/docs/tasks/configure-pod-container/assign-pods-nodes/#create-a-pod-that-gets-scheduled-to-your-chosen-node


How to analyze mas-iso-seq data using suppa ?

I use isoseq3 and pigeon to process mas-iso-seq data. How can I continue to use suppa to analyze the output files obtained.

I used isoseq3's workflow and got a gff file for each sample, but suppa only requires one gff. Should I combine these gff, or use individual gff for each sample to calculate psi.

Please talk to the authors of suppa.