AssertionError in DeepSpeed Inference for Llama-2-70B Model

Describe the bug
I encountered an error while attempting to utilize DeepSpeed for inference by the Llama-2-70B model, using the code provided in the GitHub repository located at the following URL:
GitHub Repository: https://github.com/microsoft/DeepSpeedExamples/tree/master/inference/huggingface/text-generation
The command line I used to execute the code is:
deepspeed --num_gpus 8 inference-test.py --model meta-llama/Llama-2-70b-chat-hf --use_meta
Here is the error message I encountered:

I encountered the error while running the code with  4xA100 40GB or 8xA100 40GB GPUs.
ds_report output
Setting ds_accelerator to cuda (auto detect)
DeepSpeed C++/CUDA extension op report
NOTE: Ops not installed will be just-in-time (JIT) compiled at
runtime if needed. Op compatibility means that your system
meet the required dependencies to JIT install the op.
JIT compiled ops requires ninja
ninja .................. [OKAY]
op name ................ installed .. compatible
[WARNING]  async_io requires the dev libaio .so object and headers but these were not found.
[WARNING]  async_io: please install the libaio-dev package with apt
[WARNING]  If libaio is already installed (perhaps from source), try setting the CFLAGS and LDFLAGS environment variables to where it can be found.
async_io ............... [NO] ....... [NO]
fused_adam ............. [NO] ....... [OKAY]
cpu_adam ............... [NO] ....... [OKAY]
cpu_adagrad ............ [NO] ....... [OKAY]
cpu_lion ............... [NO] ....... [OKAY]
[WARNING]  Please specify the CUTLASS repo directory as environment variable $CUTLASS_PATH
evoformer_attn ......... [NO] ....... [NO]
fused_lamb ............. [NO] ....... [OKAY]
fused_lion ............. [NO] ....... [OKAY]
quantizer .............. [NO] ....... [OKAY]
random_ltd ............. [NO] ....... [OKAY]
[WARNING]  sparse_attn requires a torch version >= 1.5 and < 2.0 but detected 2.0
[WARNING]  using untested triton version (2.0.0), only 1.0.0 is known to be compatible
sparse_attn ............ [NO] ....... [NO]
spatial_inference ...... [NO] ....... [OKAY]
transformer ............ [NO] ....... [OKAY]
stochastic_transformer . [NO] ....... [OKAY]
transformer_inference .. [NO] ....... [OKAY]
DeepSpeed general environment info:
torch install path ............... ['/deepspeed/lib/python3.10/site-packages/torch']
torch version .................... 2.0.1+cu118
deepspeed install path ........... ['/deepspeed/lib/python3.10/site-packages/deepspeed']
deepspeed info ................... 0.11.0, unknown, unknown
torch cuda version ............... 11.8
torch hip version ................ None
nvcc version ..................... 11.8
deepspeed wheel compiled w. ...... torch 2.0, cuda 11.8
shared memory (/dev/shm) size .... 503.88 GB
The versions of the essential libraries and components:
accelerate               0.23.0
transformers           4.28.1

Hello @emadmortezazadehj,
We were able to test with the meta-llama/Llama-2-70b-hf and meta-llama/Llama-2-7b-hf with the latest in the DeepSpeed and DeepSpeedExamples repos and are seeing proper functionality. I see that you're using the meta-llama/Llama-2-70b-chat-hf, which may not be compatible.
Can you please try using the latest in DeepSpeed and DeepSpeedExamples and run meta-llama/Llama-2-70b-hf with the following command?
deepspeed --num_gpus 8 inference-test.py --model meta-llama/Llama-2-70b-hf --use_meta_tensor

Thanks,
Lev

Hi @emadmortezazadehj,
Closing the issue for now. Please feel free to try the suggestion above and open a new issue if the problem persists.
Thanks!


[quick fix]Support for pd DataFrame in beta_diversity

#1521
Please complete the following checklist:

[x] I have read the guidelines in CONTRIBUTING.md.

[x] I have documented all public-facing changes in CHANGELOG.md.

[x] This pull request includes code, documentation, or other content derived from external source(s). If this is the case, ensure the external source's license is compatible with scikit-bio's license. Include the license in the licenses directory and add a comment in the code giving proper attribution. Ensure any other requirements set forth by the license and/or author are satisfied. It is your responsibility to disclose code, documentation, or other content derived from external source(s). If you have questions about whether something can be included in the project or how to give proper attribution, include those questions in your pull request and a reviewer will assist you.

[x] This pull request does not include code, documentation, or other content derived from external source(s).

Note: REVIEWING.md may also be helpful to see some of the things code reviewers will be verifying when reviewing your pull request.

@maxibor, looks like the travis build is failing.

I know, but from what I see, it's flake8 syntax check in other parts of the code that fail...
skbio/io/format/tests/test_stockholm.py:902:17: E117 over-indented
skbio/io/format/tests/test_ordination.py:197:17: E117 over-indented
skbio/sequence/_grammared_sequence.py:316:13: E117 over-indented
skbio/alignment/_pairwise.py:851:17: E117 over-indented
make: *** [test] Error 1
The command "WITH_COVERAGE=TRUE make test" exited with 2.

That is very odd, I wasn't able to reproduce this in the master branch.
However, I am able to see these errors when I pull down your branch.
Would you mind fixing these errors and pushing a commit with these
changes to this same PR?
On (Mar-20-19| 9:26), Maxime Borry wrote:

I know, but from what I see, it's flake8 syntax check in other parts of the code that fail...
skbio/io/format/tests/test_stockholm.py:902:17: E117 over-indented
skbio/io/format/tests/test_ordination.py:197:17: E117 over-indented
skbio/sequence/_grammared_sequence.py:316:13: E117 over-indented
skbio/alignment/_pairwise.py:851:17: E117 over-indented
make: *** [test] Error 1
The command "WITH_COVERAGE=TRUE make test" exited with 2.

--
You are receiving this because you commented.
Reply to this email directly or view it on GitHub:
https://github.com/biocore/scikit-bio/pull/1651#issuecomment-474913800

That's very odd indeed as you can see from the commits of this PR that I haven't touched these files...
Anyway, fixed the over-identations to (hopefully) pass travis checks (flake 8)

Thanks @maxibor!!!


Could not find ZLIB

I am using Hunter on Fedora and getting this error:
CMake Error at /home/peterausdemall/.hunter/_Base/Download/Hunter/0.16.15/6974c21/Unpacked/cmake/find/FindZLIB.cmake:57 (find_package):
  Could not find a package configuration file provided by "ZLIB" with any of
  the following names:

    ZLIBConfig.cmake
    zlib-config.cmake

  Add the installation prefix of "ZLIB" to CMAKE_PREFIX_PATH or set
  "ZLIB_DIR" to a directory containing one of the above files.  If "ZLIB"
  provides a separate development package or SDK, be sure it has been
  installed.
Call Stack (most recent call first):
  CMakeLists.txt:94 (find_package)

The error appears with the latest release of Hunter, too. I have installed the package "zlib-devel" and the file "/usr/share/cmake/Modules/FindZLIB.cmake" does also exist.

---
Want to back this issue? **[Post a bounty on it!](https://www.bountysource.com/issues/40189988-could-not-find-zlib?utm_campaign=plugin&utm_content=tracker%2F1032790&utm_medium=issues&utm_source=github)** We accept bounties via [Bountysource](https://www.bountysource.com/?utm_campaign=plugin&utm_content=tracker%2F1032790&utm_medium=issues&utm_source=github).

I think more information on your cmake file is needed to help out.
For hunter installing the os package "zlib-devel" is of little use. Hunter will not look for those packages as it expects to build zlib from its own package. You need to make sure that you have hunter_add_package(ZLIB) in your cmake file before calling find_package(ZLIB CONFIG REQUIRED). There is an example https://github.com/ruslo/hunter/tree/master/examples/ZLIB (most packages have and example which is used for testing), there you will see it used as follows
# download
hunter_add_package(ZLIB)

# now can be used
find_package(ZLIB CONFIG REQUIRED)

add_executable(foo main.c)
target_link_libraries(foo ZLIB::zlib)

there is also an example in there on how to use it in compatibility mode (using the ZLIB_INCLUDE_DIRS and ZLIB_LIBRARIES, rather than target ZLIB::zlib). hunter_add_package will download the version of ZLIB given (either from the default config or project defined config) compile it and install it to a folders based on a SHA1 hash of the os/toolchain/compiler options. The find_package will then be directed to the hunter installed version.

Ok I didnt know it requires hunter_add_package(ZLIB) automatically when I add find_package(ZLIB REQUIRED) somewhere.


mail box not warking

Issue type:

[ ] Feature request
[ ] Bug report
[ ] Documentation

Environment:

AdminLTE Version:
Operating System:
Browser (Version):

Description:
How to set mail inbox, send, junk, link.

This project is not an application that will do anything. Is just the HTML elements, CSS styles and JS componentes to build your own application.
@almasaeed2010 please close this issue


Issue in Populating ADG data for first time in Detail Grid

Project Details are :
https://paste.apache.org/cpo8y
Test case is available on VDI.
Go to Accounts Payable from Select in Menu
Go to ATM Rental Income from Setups in Menu
File : com/dbz/modules/AR/dbzATMRentalReceipt.mxml
When i open this setup exception is thrown

in this setup all 3 records of ADG has also records in Detail Grid but when i open this setup 1st record of ADG is selected nothing in Detail grid is shown

after that i click on 2nd record and then click on 1st record of ADG now detail grid records are shown

Variables in DateBase.as need to have an initial value.  You should be able to do this yourself.
Look for variables such as:
private static var _dayNamesShort:Array;
The ASDoc should tell you the initial value where it says @default.
Variables with "override" in the name do not need to have an initial value.

I have added default values for _monthNamesShort and _dayNamesShort
DateBase.js :
mx.formatters.DateBase._monthNamesShort = ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"];
Still same exception is thrown

Debug into it to verify that the browser loaded the code with these changes.

Yes,Browser loaded the code with these changes :

Still same exception.Please check on VDI and resolve this issue

Someone seemed to be using the VDI and logged me out.  So I will not take the time to investigate your issues until you can tell me that people are done using the VDI.
If you verified the new code and debugged into the new code, why did you get the same exception?  Why is the value null?

I was logged into VDI to send you screenshot of latest code.i do not logged into VDI now.

I dnt know why i am getting the same exception.

The app on the VDI cannot login.  So I cannot investigate further.
When you debugged into the latest code, what did you see?  Was the variable initialized?  If so, why couldn't it be read?

I didn't see earlier that there is a static initializer function in DateBase, so instead of initializing
monthNamesShort, try initializing monthNamesShortOverride, and similar for the other variables.

@aharui Thanks issue resolved


Levenshtein refactoring

Codecov Report

Merging #12 into master will increase coverage by 0.3%.
The diff coverage is 91.66%.

@@            Coverage Diff            @@
##           master      #12     +/-   ##
=========================================
+ Coverage   27.61%   27.91%   +0.3%
=========================================
  Files          15       15
  Lines         239      240      +1
  Branches       39       39
=========================================
+ Hits           66       67      +1
  Misses        171      171
  Partials        2        2


Can't connect to JIRA if browser gives certificate warning

Our internal test JIRA server uses self-signed certificate which seems to prevent StopWatch from logging in.

That's outside of StopWatch scope. Either get a signed certificate OR run without SSL (http:// instead of https://). If it is an internal test server, you shouldn't need SSL?

I haven't explained the problem well.
Running a test server with self-signed certificate is not unusual.  I don't think having to change the way JIRA test server is run (i.e. having to get and install a CA-signed certificate or running without SSL) in order to test a convenience utility is something most people are likely to do, regardless how good it is, because they usually have a reason (good or bad) for setting up their test server in a particular way.
When StopWatch attempts to connect, it just fails silently with no explanation -- all you get is "not connected".  At this point it looks like StopWatch isn't working at all -- time to try some else from Jira Marketplace.  The only way to find out that StopWatch does work is to connect to a JIRA server with CA-signed certificate -- and if the only one available is the production server then not everyone would risk it.  Even if you don't want to handle this then shouldn't StopWatch at least clearly state what the problem is?

Good point. I try to make the UI as unobtrusive as possible, so having a dialog popping up with error messages isn't really my thing. But I could make the "Not connected" clickable and make that click popup the error message.

Thanks!

You're welcome - best improvements always come from user input. :-)

For me the tool works great with our self-signed certificate. Was this fixed? Otherwise, maybe you only have to trust the certificate in windows for the tool to work.

No it wasn't fixed. I need to propagate the actual connection error from deep in my Jira api-layer up to the UI - that doesn't happen ATM.

Sometimes the JIRA login requires a CAPTCHA. This could mislead one into thinking that Stopwatch is broken, but it is not. Just logout of JIRA from your web browser, and log back in. This will trigger the CAPTCHA request. Once you successfully log back in, Stopwatch will be off and running again.
I noticed version 1.7 no longer has the ability to edit the timers.

Yes I am working on that part. Some of it will be actual HTTP errors and some will be messages from Jira API - I'll try to unify the user-feedback regardless of the source of error.

This feature will be part of the 1.9.0 release, that is ready within a week.


Bug: unhandled nested death infinite loop

[ [ die ] open ] @: *died foo to repro
Sometimes can crash the interpreter.
Doesn't skip dh unless in it!

Too hard for 0.0.6, been stuck trying to solve this for a few days and stuck still.
I'm starting to think that the existence of *died is wrong rather than the fact it doesn't work in certain cases. But it's pretty hard to come up with an alternative: *died is not about returning ok, result or crap like that, it's about catching errors coming mainly from "the deep below", namely the native code part of the language.
I see how the use of Crystal exceptions & begin..rescue can be eliminated, sure (and that's what should be done when I feel like it). But this particular problem...
Death handler lookup is extremely hard in Novika. It'd be easier to have a neural network guess the right block to use rather than to devise an algo by hand... That's what I'm talking about: perhaps it is the very existence of *died  that is wrong rather than the peculiarities of its shitty implementation? If it requires a shitty implementation, perhaps it's not what the language needs?
The amount of code to rewrite if I do come up with an alternative tho... Better I don't, damn!


Bugs in GPIO open drain, etc.

Current implementation does not actually set pins to open drain. Bit pad_driver of pinX register needs to be set.
For convenience modification to esp32 crate is desired to rename the pinX_pad_driver field to just pad_driver.
This needs a lot of lines in yaml files however, unless svdtools is modified to allow pattern in _strip fields.
Also we should allow "simultaneous" input and output pins. (e.g. for open drain, but also for peripherals like i2c which do direction switching themselves).

Current implementation does not actually set pins to open drain. Bit pad_driver of pinX register needs to be set.

Good spot!

For convenience modification to esp32 crate is desired to rename the pinX_pad_driver field to just pad_driver.

I added bitfield stripping in https://github.com/stm32-rs/svdtools/blob/master/CHANGELOG.md#v004-2020-01-12 Which should help!

Also we should allow "simultaneous" input and output pins. (e.g. for open drain, but also for peripherals like i2c which do direction switching themselves).

I agree I think we should limit the into_X methods to the following:

into_output
into_input
into_analog
into_alternate (I'm guessing alternate mode should both enable input and output mode and let the peripheral handle it?)

Then have extra methods on these types to do the other stuff, like setting open_drain mode, pullups etc. For example stm32 land, I typically use something like this configure the i2c pins:
let scl = gpiob
            .pb8
            .into_alternate_af4()
            .set_open_drain()
            .internal_pull_up(true)
            .set_speed(Speed::VeryHigh);

Which I think would be very applicable to this HAL. Thoughts?

I added bitfield stripping in https://github.com/stm32-rs/svdtools/blob/master/CHANGELOG.md#v004-2020-01-12 Which should help!

Yep, busy expanding this with pattern matching to not have to have separete lines for all 40 gpios

Which I think would be very applicable to this HAL. Thoughts?
I agree that we need to limit the amount of into_xxx. Still think we may also want into_io (or into_inouput or into_input_output), this is quite a common case and bit clumsy to have to handle via alternate mode 3.

And we need to implement functions on the gpios to handle the multiplexer routing (something like gpio.connect_output_to(PERIPHERAL), gpio.connect_input_to(PERIPHERAL).

@MabezDev and @chocol4te I reviewed various stm32 and nrf51 gpio implementations.
They all use into_open_drain. None has concept of IO (Input/Output).
I'll indeed add helper functions for advanced config (like pullup/down, strength and enable input on an output).
@chocol4te Why do you prefer the nrf51 implementation. I think the syntax with split is nicer. Also they still use macros, so I don't see the key difference.

@arjanmels Mainly it was the ergonomics of making peripherals with generic constraints on GPIO types, e.g. Pin<AF3> as opposed to PINS where PINS: I2cPins and impl I2cPins for (Gpio4, Gpio5) (pseudocode). Generally I think expressing requirements using the type system is cleaner than generating the impls with macros.
The pattern used in STM32 makes sense because those peripherals tend to only work on a low number of pin groups, and similarly for NRF where nearly every peripheral can use any pin. ESP32 seems to be a middle ground where some peripherals require specific pins and others work on any.
I don’t feel strongly either way though, I can see the merits of both, so please do whatever you feel is best :)

@chocol4te Ok, I'll take another look at that aspect.
I will start including changes into PR #36.

I'll indeed add helper functions for advanced config (like pullup/down, strength and enable input on an output

The stm32-f4xx-hal does something like this which is where I was going with my example https://github.com/stm32-rs/stm32f4xx-hal/blob/master/src/gpio.rs#L587-L655
We could have many helper into_X functions for common cases like you said. Then for alternate modes with could have methods like set_open_drain, enable_input, enable_output etc, for more advanced configuration.
I was looking at the esp-idf implementation and the peripheral driver configures the pins, it would be really nice if we could just pass the pins in the correct alternate function mode and let the peripheral driver do the configuration.
Very rough idea and not how I'd actually implement it, but the basic idea:
pub trait AlternateFunction { // implemented on every pin
  fn enable_input(&mut self) -> &mut Self;
  fn enable_output(&mut self) -> &mut Self;
  // etc etc
}

// i2c driver

impl I2c {
  // can generically accept any valid i2c pins, and correctly configure them
  // in a the real impl, there would be constraints for the specific pins configurations (see stm32 and nrf hals for examples)
  pub fn new<I2C, SCL: AlternateFunction, SDA: AlternateFunction>(i2c: I2C, scl: SCL, sda: SDA) {
    sda
        .enable_input()
        .enable_output();
   // etc, basically the i2c driver knows how the pin is meant to be setup, so let it configure it.
  }
}

Thoughts on that? I would be happy to try and impl this for a more indepth example

Agree with your thinking on into functions versus helpers. The into functions are now simplified and corrected in #36. Helper functions are easy to add.
Regarding alternate functions: I agree that the peripherals should be responsible for the configuration.
Note that there are 2 types of alternate function on esp32:

Flexibily routed via gpio matrix (this will additionally need helper functions connect_input_to_function , connect_function_to_output). Here no separete pin type is needed, but function can just use most appropriate either Input or Output (or general non-typed).
Fixed routing via iomux (for high speed peripherals). Here only fixed pins can be used and the AF1-7 settings are used.

I am not yet sure how to pass in either the general or the dedicated AF via the same parameter. This needs some more thought.

I made another round over gpio. I arrayed the registers in the esp32 crate, this makes for a cleaner implementation (and was really needed to make the connect_input_to_peripheral possible.
I also improved the ergonomics via extra traits. See #36 and example usage in https://github.com/arjanmels/esp32-hal/blob/feature-i2c-am/src/i2c.rs
Still working on the implementation for the alternate functions
@MabezDev and @chocol4te: what do you think?

Looks really great, the automatic configuration with a call to .into() is just awesome :D

@chocol4te The branch should build, but you do require the latest github version of esp32, which needs version 1.6 of svdtools (pip3 install --upgrade svdtools)

... which needs version 1.6 of svdtools

Typo here, this should be version 0.1.6.

... which needs version 1.6 of svdtools

Typo here, this should be version 0.1.6.

Thanks, I corrected it.

Closed by #36


Remove $content_width

Good riddance

Happy days

Where were you when $content_width was removed? Never forget

Bye $content_width - you won't be missed.

Not that I mind, but why remove it now? Did I miss a discussion somewhere along the way?

@corradomatt - there are a few reasons, and we did have a few conversations here and there (can't find records of it right now), but in general, it's because it's really not necessary, and can cause some issues and general confusion.
Here's a good resource on that: https://wycks.wordpress.com/2013/02/14/why-the-content_width-wordpress-global-kinda-sucks/

Thanks for sharing that @JulienMelissas - makes sense to me.


Missing MainPage.xaml creation

MainPage.xaml is mentioned but I can find no reference for creating it via Blank App

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

ID: deb3f64f-cb34-b6e2-a9a0-6ed8eb741cb3
Version Independent ID: c8f31cef-b782-76ff-df62-9f26c54e8897
Content: Use a SQLite database in a UWP app - Windows UWP applications
Content Source: windows-apps-src/data-access/sqlite-databases.md
Product: uwp
GitHub Login: @mcleanbyron
Microsoft Alias: mcleans

Did you create your UWP application project using the standard "Blank App (Universal Windows)" project template in Visual Studio? If so, the MainPage.xaml file (and the relateed code-behind file) should be created for you in your project.

SOLVED
In Visual Studio 19 if your Mobile Xamarin project lacks a MainPage.xaml component, simply create it: In Solution Explorer  on the Project title and  Add/New Item.  Then in the Add New Item window select Xamarin.Forms and select Content Page.  At the bottom of the window rename the page to MainPage.xaml and  on Add.
You'll find the proper "Welcome to Xamarin.Forms!" code is automatically populated within it.
Have fun!  'Alan

SOLVED
In Visual Studio 19 if your Mobile Xamarin project lacks a MainPage.xaml component, simply create it: In Solution Explorer  on the Project title and  Add/New Item.  Then in the Add New Item window select Xamarin.Forms and select Content Page.  At the bottom of the window rename the page to MainPage.xaml and  on Add.
You'll find the proper "Welcome to Xamarin.Forms!" code is automatically populated within it.
Have fun!  'Alan


Entsoe prices assigned to wrong day

Describe the bug
When using entsoe for BZN|DE-LU, todays prices are assigned to tomorrow.
Please see these examples:

The problem seems to occur only in the afternoon when the response comprises 48h of price data.
Pleas find attached a entsoe response from 15:00 local time.
Energy_Prices_202410091400-202410101400.txt
Now in the evening after evcc restart no current prices are shown and data seems to be one day off because Thursday 20:00, for example should be 31.8 ct instead of > 33 ct:

Please also see discussions:
https://github.com/evcc-io/evcc/issues/16519
https://github.com/evcc-io/evcc/discussions/16539
(Sorry for not testing any nightly build, but I think v0.130.13 is up to date in this regard.)
Steps to reproduce

Configure Entsoe template as grid tariff with BZN|DE-LU
start evcc
wait until afternoon when tomorrows prices are published
...

Configuration details
tariffs:
  currency: EUR # three letter ISO-4217 currency code (default EUR)
  grid:
    type: template
    template: entsoe
    domain: BZN|DE-LU
    securitytoken: xxx # api token
    charges: 0.16672 #0.1984 minus 19% # optional, additional charges per kWh
    tax: 0.19 # optional, additional tax (0.1 for 10%)

Log details
[entsoe] TRACE 2024/10/09 20:44:58 GET https://web-api.tp.entsoe.eu/api?DocumentType=A44&In_Domain=10Y1001A1001A82H&Out_Domain=10Y1001A1001A82H&PeriodEnd=202410102000&PeriodStart=202410092000&securityToken=***

...the response is truncated in my log, but please see attached file as an example.
No further log items to find regarding this topic.

What type of operating system are you running?
Docker container
Nightly build

[X] I have verified that the issue is reproducible with the latest nightly build

Version
0.130.13

Screenshots are useless without the log dats.

here is the trace log, but the entsoe response is truncated
evcc-20241009-222649-trace.log

It looks like at least one bug with Entso-E and would probably help if someone wanted to open a ticket:
[entsoe] TRACE 2024/10/10 08:24:20 GET https://web-api.tp.entsoe.eu/api?DocumentType=A44&In_Domain=10YPT-REN------W&Out_Domain=10YPT-REN------W&PeriodEnd=202410110800&PeriodStart=202410100800&securityToken=***
[entsoe] TRACE 2024/10/10 08:24:21 <?xml version="1.0" encoding="utf-8"?>
  <Publication_MarketDocument xmlns="urn:iec62325.351:tc57wg16:451-3:publicationdocument:7:3">
    <mRID>8116828a4635487daf7c7d3dea2b624b</mRID>
    <revisionNumber>1</revisionNumber>
    <type>A44</type>
    <sender_MarketParticipant.mRID codingScheme="A01">10X1001A1001A450</sender_MarketParticipant.mRID>
    <sender_MarketParticipant.marketRole.type>A32</sender_MarketParticipant.marketRole.type>
    <receiver_MarketParticipant.mRID codingScheme="A01">10X1001A1001A450</receiver_MarketParticipant.mRID>
    <receiver_MarketParticipant.marketRole.type>A33</receiver_MarketParticipant.marketRole.type>
    <createdDateTime>2024-10-10T06:24:21Z</createdDateTime>
    <period.timeInterval>
      <start>2024-10-09T22:00Z</start>
      <end>2024-10-10T22:00Z</end>
    </period.timeInterval>
      <TimeSeries>
        <mRID>1</mRID>
        <auction.type>A01</auction.type>
        <businessType>A62</businessType>
        <in_Domain.mRID codingScheme="A01">10YPT-REN------W</in_Domain.mRID>
        <out_Domain.mRID codingScheme="A01">10YPT-REN------W</out_Domain.mRID>
        <contract_MarketAgreement.type>A01</contract_MarketAgreement.type>
        <currency_Unit.name>EUR</currency_Unit.name>
        <price_Measure_Unit.name>MWH</price_Measure_Unit.name>
        <curveType>A03</curveType>
          <Period>
            <timeInterval>
              <start>2024-10-09T22:00Z</start>
              <end>2024-10-10T22:00Z</end>
            </timeInterval>
            <resolution>PT60M</resolution>
              <Point>
                <position>1</position>
                 <price.amount>40.08</price.amount>
              </Point>
              <Point>
                <position>2</position>
                 <price.amount>40</price.amount>
              </Point>
              <Point>
                <position>5</position>
                 <price.amount>44</price.amount>
              </Point>
              <Point>
                <position>6</position>
                 <price.amount>55.01</price.amount>
              </Point>
              <Point>
                <position>7</position>
                 <price.amount>69</price.amount>
              </Point>
              <Point>
                <position>8</position>
                 <price.amount>91.48</price.amount>
              </Point>
              <Point>
                <position>9</position>
                 <price.amount>108.8</price.amount>
              </Point>
              <Point>
                <position>10</position>
                 <price.amount>92</price.amount>
              </Point>
              <Point>
                <position>11</position>
                 <price.amount>69</price.amount>
              </Point>
              <Point>
                <position>12</position>
                 <price.amount>40.29</price.amount>
              </Point>
              <Point>
                <position>13</position>
                 <price.amount>39.83</price.amount>
              </Point>
              <Point>
                <position>14</position>
                 <price.amount>40.08</price.amount>
              </Point>
              <Point>
                <position>15</position>
                 <price.amount>39.83</price.amount>
              </Point>
              <Point>
                <position>16</position>
                 <price.amount>40.5</price.amount>
              </Point>
              <Point>
                <position>17</position>
                 <price.amount>55.26</price.amount>
              </Point>
              <Point>
                <position>18</position>
                 <price.amount>71.78</price.amount>
              </Point>
              <Point>
                <position>19</position>
                 <price.amount>100</price.amount>
              </Point>
              <Point>
                <position>20</position>
                 <price.amount>129.22</price.amount>
              </Point>
              <Point>
                <position>21</position>
                 <price.amount>180</price.amount>
              </Point>
              <Point>
                <position>22</position>
                 <price.amount>173.4</price.amount>
              </Point>
              <Point>
                <position>23</position>
                 <price.amount>120</price.amount>
              </Point>
              <Point>
                <position>24</position>
                 <price.amount>108.8</price.amount>
              </Point>
          </Period>
      </TimeSeries>
  </Publication_MarketDocument>
1
22
From                   To                     Price/Cost
2024-10-10 00:00:00    2024-10-10 01:00:00    0.040
2024-10-10 01:00:00    2024-10-10 02:00:00    0.040
2024-10-10 02:00:00    2024-10-10 03:00:00    0.044
2024-10-10 03:00:00    2024-10-10 04:00:00    0.055
2024-10-10 04:00:00    2024-10-10 05:00:00    0.069
2024-10-10 05:00:00    2024-10-10 06:00:00    0.091
2024-10-10 06:00:00    2024-10-10 07:00:00    0.109
2024-10-10 07:00:00    2024-10-10 08:00:00    0.092
2024-10-10 08:00:00    2024-10-10 09:00:00    0.069
2024-10-10 09:00:00    2024-10-10 10:00:00    0.040
2024-10-10 10:00:00    2024-10-10 11:00:00    0.040
2024-10-10 11:00:00    2024-10-10 12:00:00    0.040
2024-10-10 12:00:00    2024-10-10 13:00:00    0.040
2024-10-10 13:00:00    2024-10-10 14:00:00    0.041
2024-10-10 14:00:00    2024-10-10 15:00:00    0.055
2024-10-10 15:00:00    2024-10-10 16:00:00    0.072
2024-10-10 16:00:00    2024-10-10 17:00:00    0.100
2024-10-10 17:00:00    2024-10-10 18:00:00    0.129
2024-10-10 18:00:00    2024-10-10 19:00:00    0.180
2024-10-10 19:00:00    2024-10-10 20:00:00    0.173
2024-10-10 20:00:00    2024-10-10 21:00:00    0.120
2024-10-10 21:00:00    2024-10-10 22:00:00    0.109

Positions 3 and 4 are missing for both days, which the parser is not aware of.

To my understanding thats not a bug, it's feature of the now used curve type A03: If the data hasn't changed, the sample isn't transmitted. So just fill up with the previous sample.
See here: https://github.com/evcc-io/evcc/issues/16519#issuecomment-2397378903

Wow, what an utterly horrible idea. To use an expressive data format like XML and the try to save data by imposing arbitrary logic on any consumer.
That said: it seems the encoding has changed to curve type A03 although it's not clear, when or why this was changed. But yes, for A03 that seems to be expected.


Save defined associations

Codecov Report

Merging #34 into master will decrease coverage by 3.46%.
The diff coverage is 64.78%.

@@            Coverage Diff             @@
##           master      #34      +/-   ##
==========================================
- Coverage   91.23%   87.76%   -3.47%
==========================================
  Files           9        9
  Lines         502      564      +62
==========================================
+ Hits          458      495      +37
- Misses         44       69      +25

Impacted Files
Coverage Δ

src/Model/Entity/ModelHistory.php
87.5% <ø> (ø)
:arrow_up:

src/Model/Table/ModelHistoryTable.php
87.26% <54.05%> (-4.62%)
:arrow_down:

src/Model/Behavior/HistorizableBehavior.php
89.39% <76.47%> (-4.67%)
:arrow_down:

Continue to review full report at Codecov.

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


Adding Extension/Custom Fields to slsaprovenance1 Type Not Reflecting in Attested Predicate Data

I am encountering an issue while attempting to add custom extension fields to the SLSAProvenance1 predicate type, specifically aiming to include a provenance data. Despite following the guidance provided in the documentation her (https://slsa.dev/spec/v1.0/provenance#extension-fields) and experimenting with various methods to incorporate these fields into the data, the changes are not appearing in the attested predicate data.
Is there a specific way or workaround available that would allow for the successful integration of custom fields into the slsaprovenance1 predicate type?
Any insights or suggestions on how to resolve this issue would be greatly appreciated.

Hey @SaiJyothiGudibandi, need small help. I am trying to reproduce this issue but before that I am bit unclear about issue whether it is related to cosign or SLSA.  Could you please elaborate how cosign couldn't help here, what particular use case of cosign were you looking to implement and that doesn't works for you??  Would be a great help to proceed with this issue.

Without more details, I'm not sure if this is an issue in Cosign or SLSA. This sounds like an issue with the underlying slsa library or the predicate you're provided is not compatible with slsa v1. Feel free to reopen if you have more details.


Update interested-technical-writers.md

Closing as CLA is unsigned. If you sign the CLA please reopen this PR.


[python-package] verbose does not supress warnings with custom objectives

Description
In the Python package of LightGBM 4.0.0, setting the verbose parameter to -1 does not suppress warnings if the objective is a user-defined function.
Reproducible example
import numpy as np
import pandas as pd

from lightgbm import LGBMRegressor

df = pd.DataFrame({"x": [0, 0, 1, 1, 1], "y": [0, 1, 0, 1, 1]})

def l2_obj(y_true, y_pred):
    grad = y_pred - y_true
    hess = np.ones_like(y_pred)
    return grad, hess

estimator = LGBMRegressor(
    objective=l2_obj, min_child_samples=1, n_estimators=1, n_jobs=1, verbose=-1
)

estimator.fit(df[["x"]], df["y"])

Environment info
LightGBM version or commit hash: 4.0.0
Command(s) you used to install LightGBM
conda install -y lightgbm

is this related to https://github.com/pycaret/pycaret/issues/3660 ? I installed lightgbm via pip...

Also encounter it when using lightgbm.cv. But works fine with lightgbm.train

GidonKR, thanks for temporary solution!

From @GidonKR here is some code that worked for me in Python 3.12
import logging

class CustomLogger:
    def init(self):
        self.logger = logging.getLogger('lightgbm_custom')
        self.logger.setLevel(logging.ERROR)

    def info(self, message):
        self.logger.info(message)

    def warning(self, message):
        # Suppress warnings by not doing anything
        pass

    def error(self, message):
        self.logger.error(message)
l = CustomLogger()
l.init()
lgb.register_logger(l)

Thanks for using LightGBM and for putting the effort into a minimal, reproducible example!
I'm able to reproduce this with the latest lightgbm built from source here (https://github.com/microsoft/LightGBM/commit/14435485bd7e9c4d72ab43bd269c33fc4230212f).
import numpy as np
import pandas as pd

from lightgbm import LGBMRegressor

df = pd.DataFrame({"x": [0, 0, 1, 1, 1], "y": [0, 1, 0, 1, 1]})

def l2_obj(y_true, y_pred):
    grad = y_pred - y_true
    hess = np.ones_like(y_pred)
    return grad, hess

params = {
    "min_child_samples": 1,
    "n_estimators": 1,
    "n_jobs": 1,
    "verbose": -1
}

LGBMRegressor(
    **{**params, "objective": l2_obj}
).fit(df[["x"]], df["y"])

# [LightGBM] [Info] Using self-defined objective function
# [LightGBM] [Warning] No further splits with positive gain, best gain: -inf

LGBMRegressor(
    **{**params, "objective": "regression"}
).fit(df[["x"]], df["y"])

# (no logs)

The uses of lightgbm.register_logger() mentioned by others in this thread is a totally valid way to address this, but this is definitely a bug. I'll investigate and hopefully put up a fix shortly.

And very sorry for the delayed response. This project has a very small number of maintainers relative to its popularity, and 0 who work on LightGBM maintenance full-time.
If any of you involved in this thread have feedback on what we could do to make it more likely that you'll investigate such issues and contribute fixes yourself in the future, we'd love to hear them here or over in #6350.

Looks like this behavior is not specific to the scikit-learn interface, and happens with lgb.train() too.
import numpy as np
import pandas as pd

import lightgbm as lgb

df = pd.DataFrame({"x": [0, 0, 1, 1, 1], "y": [0, 1, 0, 1, 1]})

def l2_obj(y_pred, train_data):
    y_true = train_data.get_label()
    grad = y_pred - y_true
    hess = np.ones_like(y_pred)
    return grad, hess

params = {
    "min_child_samples": 1,
    "n_estimators": 1,
    "n_jobs": 1,
    "verbosity": -1
}

lgb.train(
    params={
        **params,
        "objective": l2_obj
    },
    train_set=lgb.Dataset(df[["x"]], label=df[["y"]])
)

lgb.train(
    params={
        **params,
        "objective": "regression"
    },
    train_set=lgb.Dataset(df[["x"]], label=df[["y"]])
)

I believe I've found the root cause.
This call in Booster.update() (the function that runs 1 boosting round)
https://github.com/microsoft/LightGBM/blob/14435485bd7e9c4d72ab43bd269c33fc4230212f/python-package/lightgbm/basic.py#L4132-L4133
Calls LGBM_BoosterResetParameter() in the C API.
https://github.com/microsoft/LightGBM/blob/14435485bd7e9c4d72ab43bd269c33fc4230212f/src/c_api.cpp#L2035-L2040
Which eventually calls Config::SetVerbosity() on the C++ side... which reset the verbosity level back to INFO if "verbose" or "verbosity" aren't found in the parameters passed to it.
https://github.com/microsoft/LightGBM/blob/14435485bd7e9c4d72ab43bd269c33fc4230212f/src/io/config.cpp#L42-L55

@jameslamb Did you forget to merge with release 4.4.0?

Nope, #6428 wasn't ready in time for the 4.4.0 release. We will try to get it into the next one.


DPL-378 - As a TeamLead/Laboratory Scientist, we require the ability to accept ‘null’ values for the sample volume at upload of file within Limber when needing to create the LTN & LDS AL Lib Dil plate [C=?, V=?]

User story
As a TeamLead/Laboratory Scientist, we require the ability to accept ‘null’ values for the sample volume at upload of file within Limber when needing to create the LTN & LDS AL Lib Dil plate
(‘Sample volume’ , Example_File_B.csv)
Who are the primary contacts for this story
Sara W
Acceptance criteria
To be considered successful the solution must allow:

[ ] No error message observed upon upload of files with zero/null values within the sample field
[ ] ...

Dependencies
This story is blocked by the following dependencies:

#1078

References
This story has a non-blocking relationship with:

#<issue_no.>
sanger/#<issue_no.>

Additional context
Add any other context or screenshots about the feature request here.

The sample volume is required because this step is performing a binning calculation by volume to determine the number of pcr cycles required and position the sample in the next plate accordingly (see PcrCyclesBinnedPlate creator in Limber).
What should that calculation and positioning code do if you upload a null volume, treat it as sample volume 0?

See file app/models/labware_creators/pcr_cycles_binned_plate/csv_file/row.rb
@sample_volume = @row_data[sample_volume_column]&.strip&.to_f

validate :sample_volume_within_expected_range?

def sample_volume_within_expected_range?
    in_range?('sample_volume', sample_volume, @row_config.sample_volume_min, @row_config.sample_volume_max)
end

And in the purpose configs where labware creator is PcrCyclesBinnedPlate:
:sample_volume_min: 0.2
:sample_volume_max: 50.0

We could change the minimum in the config to be zero rather than 0.2, and also if the field is null in the file we could default it to a zero value.

Discussion from meeting on 1st June:
They do want to filter out certain samples from moving forward into the next plate at the creation of the AL Lib Dil plate. Potentially they will then cycle back and put these missed samples forward at a later date (customer decision essentially).
If we move the charge and pass forward from the XP to the AL Lib step, then the customer file information could be used to create an automated submission just for the chosen samples to go forward to the XP step. Information such as the number of PCR cycles and bait library (hyb panel) can then be stored on the request generated by that auto-submission.

NB. Same logic can be applied for both Duplex Seq and for Targeted Nanonseq.

Customer supplies bait library at the stage. Can be persisted on the request itself, for presentation further downstream. Some difficulties with reducing friction when it comes to customer supplied data.

From Zoom:
My suggestions of building the submission upfront from the AL LIbs presenter may not be the best option, and it may be better handled by the PcrCyclesBinnedPlate creator. While this does result in the awkward waiting for the aysnchronous submission building, it makes it much easier to find the requests you need to hook the new plate to, and eliminates the need for any disambiguation.
Worth noting: I think there is a way to set-up submissions to build synchronously. I don't think this is exposed via the API currently, but it might simplify things.

From Catarina,
Example files and processes.
Process workflow TNano.xlsx
Process workflow DupSeq.xlsx
B_TNano template to rearray.xlsx
A_TNano template for AL-Lib Dil PCR Cycles.xlsx

Without switching to an Excel solution for the customer upload file this could be what's needed for this story:
In Sequencescape:

for Dil to XP plate submission

create new request type [name TBC]
create new submission template

In Limber:

in PcrCyclesBinnedPlate::CsvFile::Row in app/models/labware_creators/pcr_cycles_binned_plate/csv_file/row.rb

modify sample_volume_within_expected_range? validation to allow zero value or in range
add new field ‘Hyb Panel’ to csv for customer to fill in and validate against known bait libraries

in PcrCyclesBinnedPlate::CsvFile in app/models/labware_creators/pcr_cycles_binned_plate/csv_file.rb

modify generate_well_details_hash to either filter out or (better) flag rows where sample_volume = 0 (and also where empty?)
well_details is then used by PcrCyclesBinnedPlate

in PcrCyclesBinnedPlate labware creator in app/models/labware_creators/pcr_cycles_binned_plate.rb

if not using well flag change validation wells_have_required_information? that currently checks that all wells on source have rows in file, to remove that check (risky)
continue to use config limits for non-zero sample_volume values
consider adding validation that NO wells are now going forward e.g. if all sample_volumes set to zero (min = 1)
modify after_transfer! method to

to skip wells in well_details where flag is set

modify wells_have_required_information? to

skip validation for well.pending? if flag is set

add Hyb Panel field to also be stored in well metadata
add creation of auto-submission for plates to XP step for the child plate with those wells going forward

do this before transfers, so can record submission id in the transfers
new auto-submission template (see SS story)
use new request type [see SS story]
consider the grouping of samples into orders, e.g. if we store pcr_cycles in the requests that is an order-level field so would need a different order per pcr_cycle bin, or e.g. if different bait libraries are likely on the same plate
consider visibility of submission process to user, it takes time (how is it done in Cardinal?)

in PcrCyclesBinningCalculator in app/models/utility/pcr_cycles_binning_calculator.rb

modify various methods to filter out wells from well_details that have the zero sample_volume flag, we do not want to transfer them

in pipelines and purpose configuration for Duplex Seq and Targeted Nanoseq

change pipeline to split out Dil to XP plate steps into separate section using new request type
add submission section to Dil plate purpose configuration (see heron LTHR Cherrypick for example? or Cardinal)

in PcrCyclesBinnedPlatePresenter in app/models/presenters/pcr_cycles_binned_plate_presenter.rb

consider using request.pcr_cycles to decide what to display

in RSpec and / or Integration Suite add testing for:

customer upload for plate where selecting some wells to go forward but not all (partial) [i.e. normal scenario]
customer upload has set all sample_volumes to zero [i.e. error]

Clarification from Sara W and Maisie F on some questions (from emails 6th July):
Q. Are all the samples in a given customer upload file for an AL Lib plate going to have the same Hyb panel (bait library)? Or could it differ between samples in the same upload? (wondering if this could be one field on the customer upload file rather than for every sample).
A. The hyb panel can differ between samples within a plate, and we have seen this for most plates to date. There are 3 custom panels validated for this process I think, and the Broad core exome panel.
Q. Would it be practical to give the customer a list of acceptable Hyb panels (e.g. via email) so they could cut and paste the one they want to use into the customer file field(s) rather than go to the extra effort of creating an Excel file with a dropdown list? We’d need to validate the Hyb panel name on processing the file upload so it would have to match the name in the database.
A. I think the copy and paste option actually sounds feasible. We would just need to make it clear to faculty exactly wait the hyb panels are called from our side , not just what they know them as
Q. Can you confirm again whether the ‘original plate’ you want in the merged file is the LDS/LTN Stock plate (as we said in the meeting) or the next plate which is the LDS/LTN Cherrypick plate (as it says in the DPL-376 story). Obviously the cherrypick plate could already have some rearrangement compared to the original source stock plate from the customer. (Guess it would be possible to have both if that helps.)
A. Yes from the LTN cherry-pick- so the LTN cherry-pick is the stock plate in essence, the plate purpose is just changed to allow for the submission and shearing , so faculty are fully aware of the posositons of samples as this is how they have submitted them
Q. What do you want the merged file to be called? i.e. what should the download button in Limber say? e.g.  ‘Download merged summary file’?
A. Yes this sounds good- Could we call, it ‘Download merged summary file for rearray’? Or some combination of those words)

Mostly done but waiting for story 376 to catch up before UAT.

Related work was de-prioritised for now


ClrDataGrid clearSelection does not work when using Single Selection mode

Describe the bug
Selection is not cleared when applying filters if Single Section mode is used. (for Multiple selection mode the selection is cleared)
I will start with the fact that this is a bit confusing:

there is an issue to preserve selection when filtering (https://github.com/vmware/clarity/issues/2342)
there is bug fix  for when selection is cleared by applying filter (https://github.com/vmware/clarity/pull/2381)

The bug fix works for the multi selection but does not fix the problem for the SingleSelection.
It looks like clearSelection only clears for MultiSelection and not for SingleSelection
https://github.com/vmware/clarity/blob/master/src/clr-angular/data/datagrid/providers/selection.ts#L149
public clearSelection(): void {
    this.current.length = 0;
    this.prevSelectionRefs = [];
    this.emitChange();
  }

I don't understand what is the expected behaviour: should the selection be cleared or should it not when applying filters.
If the selection should be cleared then it should probably also work for Single selection mode.
Probably:
public clearSelection(): void {
    this.current.length = 0;
    this.prevSelectionRefs = [];
    this._currentSingle = null;
    this.prevSingleSelectionRef = null;
    this.emitChange();
  }

Thanks for looking into this!

I have the code change and unit tests. Could I make a PR and try to merge them in ?

You are welcome to do it, @sergiupantiru
Check the development contribution guidelines if you feel uncertain about something:
https://github.com/vmware/clarity/blob/master/DEVELOPMENT_CONTRIBUTION.md

I have one single problem with the guidelines, the fact that i need to put my email address kind of publicly in the commit message. Is it possible to use the github version<EMAIL_ADDRESS>?

Can I please have a topic branch for my PR?

@sergiupantiru
We don't make topic branches for you. Fork the repo and then you can make the topic branch off your fork. More helpful info here.

Actually, we do make topic branches, thank you @sergiupantiru for reading our contributions guidelines entirely. 👍
What Scott means is that for smaller PRs like this one, we don't force you to go through the hassle of a topic branch and you can just submit your single-commit PR against master. We put the topic branch thing in the contribution process so that we would get to pick based on the size of the contribution before people submitted a PR. We've had too many 5k-lines PRs submitted against master, that's why we're overly careful.
TL;DR: You are good to go, just submit your PR against master and we'll review it directly. 😄

I'v created the PR. Let me know how it goes 😄

Hey guys, I saw that the PR is approved by 2 persons. Is there something else I need to do or should I just wait until it's merged?


Warning: React.createElement: type is invalid

I am trying the examples (copy/paste) before using the comp in my project but I always get an error :
Warning: React.createElement: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: undefined. You likely forgot to export your component from the file it's defined in, or you might have mixed up default and named imports.
I import it:
import Autocomplete from 'react-autocomplete';
then in render I return:
       <Autocomplete
          value={this.state.value}
          wrapperStyle={{ position: 'relative', display: 'inline-block' }}
          items={['a', 'b', 'c']}
          getItemValue={(item) => item}
          onChange={(event, value) => this.setState({ value })}
          onSelect={value => this.setState({ value })}
          renderMenu={children => (

              {children}

          )}
          renderItem={(item, isHighlighted) => (

{item}

          )}
        />

Any idea?

Ok, this is due to the use of Typescript. Solved in issue #179.

I had the same issue. It works with import * as Autocomplete from 'react-autocomplete';


Implement code integration automation

As a maintainer, I need to implement a reliable CI/CD pipeline that handles all the dependencies and publishes the code for development and production.
Acceptance criteria:
1 - Publish TIKI SDK Swift package to Github packages and Swift Package Manager


Bug located in Ansys 2024.2, when loading PyAedt

Before submitting the issue

[X] I have searched among the existing issues
[X] I am using a Python virtual environment

Description of the bug
I have installed PyAedt in a fresh intallation of Ansys 24.2, and when trying to create a project it block forever, so I have tried to do the same from the GUI, and when I click on "PyAEDT Console", a console window opens, but gets blocked for a long time as shown in the picture.

If I wait enough (10 minutes or similar) I get:

Steps To Reproduce
Just install PyAedt in 24.2 and try to open the "PyAEDT Console"
Which Operating System are you using?
Windows
Which Python version are you using?
3.8
Installed packages
annotated-types==0.7.0
ansys-pythonnet==3.1.0rc3
attrs==24.2.0
cffi==1.17.0
clr-loader==0.2.6
defusedxml==0.7.1
fonttools==4.53.1
fpdf2==2.7.9
importlib-resources==6.4.4
jsonschema==4.23.0
jsonschema-specifications==2023.12.1
numpy==1.24.4
pandas==2.0.3
pillow==10.4.0
pkgutil-resolve-name==1.3.10
plumbum==1.8.3
psutil==6.0.0
pyaedt==0.9.0
pycparser==2.22
pydantic==2.8.2
pydantic-core==2.20.1
pyedb==0.26.1
python-dateutil==2.9.0.post0
pytomlpp==1.0.13
pytz==2024.1
pywin32==306
PyYAML==6.0.2
referencing==0.35.1
rpds-py==0.20.0
rpyc==6.0.0
Rtree==1.3.0
scikit-rf==1.3.0
scipy==1.10.1
six==1.16.0
toml==0.10.2
typing-extensions==4.12.2
tzdata==2024.1
zipp==3.20.1

Hi @AlfVII ,
Did you use the PyAEDT installer? You said you were using Python 3.8, but the installer is installing 3.10.
Please could you delete the folder Toolkits from your PersonalLib and also the virtual environment created in %appdata% ?
Then try to follow these steps:
https://aedt.docs.pyansys.com/version/stable/Getting_started/Installation.html
Please read this Discussion if you need more info regarding this script:
https://github.com/ansys/pyaedt/discussions/4963
I tried PyAEDT 0.10.1 and python 3.10 and is working for me.

About the versions, I am running Python 3.8 from the Powershell when trying to access PyAedt as a library, which gets blocked.
Then, when trying to open the console from the Ansys 24.2 GUI, it runs in 3.10 (which I guess is Ansys's version)
Funny enough, I also have installed 23.2, and if I open the console from its GUI, it works. But if I run it from a script in powershell, it gets blocked.

Also, I have tried deleting everything in Toolkits and %appdata%, and reinstalling (always from your script pyaedt_installer_from_aedt.py)

@AlfVII It should be independent... but who knows? Software is sometimes black magic :)
I will check python 3.8 just in case because all PyAEDT unit tests are only running in 3.10 for now.
I would use 3.10 always if possible. Not only for PyAEDT, also because some libraries are deprecating 3.8 and 3.9.

I'd love to, but the FreeCAD guys only support 3.8 in Windows...
Anyway, I'll try 3.10 and come back

It didn't work with everything on Python 3.10, same errors.
Funny enough, it I launch Ansys from the script and use GUI mode, it open Ansys normally, but PyAedt is not loaded (its button doesn't appear on the Automation view).

Maybe it helps the discussion here: I have the same issue on a Windows VDI machine. Starting a pyaedt.Desktop() from powershell/terminal fails with exactly the same behavior as reported here for 24R2 and 23R2, for various pyaedt versions (tested
a couple of versions from 0.7.something to 0.10.1). I'm using Python 3.10.9 on Windows and have pyaedt installed in my own .venv (using pip install, not from the AEDT installation). The same works fine on my local laptop.
Some more insights that I already gathered:

It fails only in GRPC mode. In COM mode, it's working fine.
The AEDT window is started fine and the app seems functional. However, pyaedt seems to fail to connect to it or retrieve the success response from starting.
Not only starting a fresh Desktop() fails, but also attaching to an already running session (with new_desktop = False) shows the same behavior.
Unfortunately, I can't tell if it ever worked on that virtual machine (prior to installing 24R2) since we're usually working in COM mode and I don't remember if I ever tested GRPC mode on that machine.
It works fine for a colleague who has a similarly set up VDI machine.

-> I'll try to install the pyaedt venv with the pyaedt installer (recommended by @gmalinve) to see if the behavior changes with that venv and will give you an update here.

Hi @AlfVII and thanks for the feedback.
I'm a bit confused by the problem you are currently facing. I've just tried to use pyaedt (dev version) with CPython3.8 and it worked fine. Here is what I did:

install CPython3.8 with hatch (fresh installation without anything) :
create a virtual environment using the installed CPython3.8
install pyaedt dev version
from within python running the following code

import pyaedt

d = pyaedt.Desktop()

I think that the problem you are facing is related to your machine environment. The first idea coming to my mind is that you are trying to use grpc while being on a network where you have configured a proxy. This would explain the problem of being stuck as you described. Could you check if that is your case ?

After a discussion with @clguenthe and some work, here is what we found. The problem might be related to the proxy configuration if you have one that is setup in your machine environment. Here could be the source of the problems:

Having environment variable HTTPS_PROXY set up with an http:// URL. If that's not your case, GRPC should ignore HTTPS proxies so that shouldn't be the source of your problem. However, if that's your case, this can be why the GRPC call is stuck. Here is an interesting article related to that situation.
Having environment variable NO_PROXY set up without 127.0.01. Including localhost in NO_PROXY seems to not be sufficient as no DNS lookup is performed and it isn't converted into an IP. However adding <IP_ADDRESS> should make things work correctly since we are talking to the IP.

@AlfVII Any feedback?

Having environment variable HTTPS_PROXY set up with an http:// URL. If that's not your case, GRPC should ignore HTTPS proxies so that shouldn't be the source of your problem. However, if that's your case, this can be why the GRPC call is stuck. Here is an interesting article related to that situation.

This worked like a charm!
Thanks a lot!


How to use  LEAST_REQUEST load balancing algorithm of envoy

I want to use envoy's LEAST_REQUEST load balancing algorithm to achieve load balancing of business clusters. I deploy envoy as a sidecar withmy container together. External connection requests will first reach envoy, and then envoy will selects upstream services for request forwarding through  LEAST_REQUEST algorithm , but there is a problem, envoy's LEAST_REQUEST algorithm is stateless, when I create a new pod, envoy on the new pod does not have the current cluster upstream service connection status data, so the newly created envoy container is not based on The global connection status of upstream services is used for LEAST_REQUEST algorithm load balancing. Is there any way envoy can solve this problem? After the new envoy node is up, it can synchronize to the latest connection status of the upstream cluster. The following figure is the topology of my service deployment:

LeastRequest is a local algorithm, so it makes sense it doesn't have a global picture. You might want to look at https://www.envoyproxy.io/docs/envoy/latest/api-v3/service/load_stats/v3/lrs.proto for collecting global load information

Does envoy provide an API that can update the local connection status?

LeastRequest is a local algorithm, so it makes sense it doesn't have a global picture. You might want to look at https://www.envoyproxy.io/docs/envoy/latest/api-v3/service/load_stats/v3/lrs.proto for collecting global load information

Does envoy provide an API that can update the local connection status?

Sorry, but I think there is no way to achieve you target for now. 😞

Sorry, but I think there is no way to achieve you target for now. 😞

Thank you very much for your reply.


using static is not a keyword.  It is two keywords.

The list at https://docs.microsoft.com/en-us/dotnet/csharp/language-reference/keywords/ is not correct because it lists using static as a keyword.
using static is not a keyword.  It is two keywords.

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

ID: fa5712fd-a965-e2a9-5b1c-0b295d5e8ccd
Version Independent ID: 4b943400-309d-0437-5513-0533456297f0
Content: C# Keywords
Content Source: docs/csharp/language-reference/keywords/index.md
Product: dotnet-csharp
Technology: csharp-language-reference
GitHub Login: @BillWagner
Microsoft Alias: wiwagn

Hi @gafter,
Thanks for posting this issue, I've created a pull request to update the docs accordingly and will let you know once they're updated.


Interactive server deletion from config or cloud

Introduces:
$ kontena master rm [master_name]

If you don't supply a master name, you'll get a multi select menu where you can select multiple masters you want to remove from config.
Same goes with
$ kontena cloud master rm

But Cloud API does not support DELETE yet so the command currently reports "Not found"

LGTM


Added /screenshot command for multimodal model chats

Added ability to feed current screen directly to multimodal models with a /screenshot command.
This enables a more dynamic experience for users who can more quickly and easily get contextual responses from their multimodal assistants.
Example use cases

Research assistant -- allows the multimodal LM to use your current screen as context and suggest ideas e.g "what's this animal?"
Study assistant -- allows to multimodal LM to provide explanations, clarifications and examples based on current text or "explain this diagram"
Design assistant -- get quick, direct input on designs

Usage
User types /screenshot into the terminal, identically to the existing path/to/image functionality. Includes support for multiple displays.
Implementation

/screenshot command appearing in user input
captureScreenshots is called
screenshot is saved in a tempdir (as identified by os.TempDir) with name based on the image size and screen index number
These paths are appended to the user input line variable

As a result, these paths are then processed in the same way as existing path/to/file.png images are
I also added some basic sanity checks with tests.
Issues
I dont seem to be able to run the tests locally for some reason, so I'd appreciate some support on that.
Requesting review and input from @jmorganca. I'm more than open to making changes or updates -- this is my first OS contribution!

Hi @jmorganca I hope you're well! Just wanted to follow up and see if you're interested in this PR. Hoping it'll be a useful and interesting feature for users to have!

Hi there, thank you so much for the well-written PR, including tests.  While I love the idea, I am worry about the concerns of Ollama including functionality that takes screenshots and the hesitation folks might have. That said, I want to say a huge thank you again for writing a well rounded PR


feat(als): Remove als from server_configurations

I had a few fixes for als.lua, but was told it was better to split off als to it's own plugin. So, I've done that now.
This fixes #1683 since ALS will no longer be the responsibility of this plugin.
The new ALS LSP config plugin is
https://github.com/TamaMcGlinn/nvim-lspconfig-ada
I know it is possible to just choose a new name for the working als config, but I would rather not leave this one around for users to get confused with.

we dont' remove any config dierectly use deprecate first.

Ok, done in https://github.com/neovim/nvim-lspconfig/pull/3277


System.Console Color stuff is crazy expensive

Is calls System.Console.GetBufferInfo which is 1/3 as expensive as actually writing the messages (which is also relatively expensive)

/cc @stephentoub

@davidfowl any work here for 1.0.0? Want someone else to investigate?

Should re-measure now that https://github.com/dotnet/corefx/issues/7823 is in.

ping @davidfowl. We can assign this to someone else...

@benaadams do you have new measurements?

Looks like its still an issue, glancing at the top functions in this unrelated issue  https://github.com/aspnet/KestrelHttpServer/issues/1319#issuecomment-274992730

GetBufferInfo can't be avoided when colors have to be set. We now have DisableColors mode that makes things much faster.


the Performance of Sub/Pub Topics [5045]

1、when I pub topics(maybe 250 bytes,100Hz.Sub client  can not receive all the topics.
2、Is there has some parameters (possible performance improvements )?

Hi @baozeng90,
You have several ways to improve the reliability in Micro XRCE-DDS.
The first one is to use reliable streams for communication. You can take a look at the Client Subscriber and Publisher example.
The second one is related to Fast RTPS (the DDS middleware used by the Agent).
It defines different QoS, in particular, I will use the historyQos, for example:
<data_reader ...>
    <topic>
        <historyQos>
            <kind>KEEP_LAST</kind>
            <depth>20</depth>
        </historyQos>
    </topic>
</data_reader>

Take into account that the <data_reader> and <publisher> profiles are equivalent, as well as, the <data_writer> and <subscriber>.
I hope it helps you.


Set Up Entitlements - Schedule a Work Session

#Privacy of Information and Protection:
Your opinion is your personal information. Please do not include any information which identifies you or others in your response.
#Description:
Review with Rizing and set up entitlements.
Senthil to book a meeting with Rizing.
#Outcome:

[ ]
[ ]
[ ]

#To Complete this ticket:

[ ]
[ ]
[ ]

Dev subaccount has been created in Cloud Foundry, entitlements configured...and integration suite should now be enabled. CRD's Technical Team to confirm as we ended the working session right after we've launched last step to enable integration suite.


Add support for Drag and Drop component/View

It would be great to add support for drag and drop views/components. We could have an outer View/Component type acting as a juce::DragAndDropContainer and apply a "draggable" property to the base View type which would apply to child components of the outer drag/drop container element.
See:
https://developer.mozilla.org/en-US/docs/Web/API/HTML_Drag_and_Drop_API
w3schools.com/html/html5_draganddrop.asp
https://docs.juce.com/master/classDragAndDropContainer.html
https://docs.juce.com/master/classDragAndDropTarget.html

@nick-thompson , another one that probably doesn't need to be beta. Will remove and correct if you think it should be.

After recent discussions we think we have a basic approach in mind for Drag and Drop support which should leverage juce::DragAndDropComponent and aim to interop well with the HTML drag and drop API:
https://developer.mozilla.org/en-US/docs/Web/API/HTML_Drag_and_Drop_API
Rough plan for the implementation is as follows:

ReactApplicationRoot inherits from juce::DragAndDropContainer
View gains the following properties, draggable, onDragStart, onDragEnd
During View::onMouseDrag, if props.hasProperty("draggable") && props.hasProperty("onDragStart") we findParentDragContainer (which will be the ReactApplicationRoot instance) and call juce::DragAndDropContainer::startDragging
We always use an Image during drag, and letting JUCE use the default component snapshot should work well. We con potentially add a dragImage prop which allows users to provide an image file URL or similar so specify the drag image.
in View::onMouseDragwe call props[onDragStart] once and then set a flag to not call it again for subsequent drag events. We'll clear this flag in View::onMouseEnd or equivalent.
In BluepritnBackend we'll catch the call to onDragStart and wrap it in a SyntheticDragEvent, just as we do for mouse and key events. Our SyntheticDragEvent will have the dataTransfer prop described by the HTML drag event on which the drag callback can assign setData. This stuff is just regular JS.
We'll have a <DropTarget> component or a dropTarget prop on view along with a onDrop callback prop which receives a SyntheticDragEvent instance. The dropTarget callback can then inspect the SyntheticDragEvent's dataTransfer prop with user defined data to perform operations (i.e. drag sample file to target and load onDrop).

@nick-thompson, would you mind a quick scan of this based on our earlier discussions and let me know if anything needs correcting? I should be getting onto this one asap.

After recent discussions we think we have a basic approach in mind for Drag and Drop support which should leverage juce::DragAndDropComponent and aim to interop well with the HTML drag and drop API:
https://developer.mozilla.org/en-US/docs/Web/API/HTML_Drag_and_Drop_API
Rough plan for the implementation is as follows:

ReactApplicationRoot inherits from juce::DragAndDropContainer
View gains the following properties, draggable, onDragStart, onDragEnd
During View::onMouseDrag, if props.hasProperty("draggable") && props.hasProperty("onDragStart") we findParentDragContainer (which will be the ReactApplicationRoot instance) and call juce::DragAndDropContainer::startDragging
We always use an Image during drag, and letting JUCE use the default component snapshot should work well. We con potentially add a dragImage prop which allows users to provide an image file URL or similar so specify the drag image.
in View::onMouseDragwe call props[onDragStart] once and then set a flag to not call it again for subsequent drag events. We'll clear this flag in View::onMouseEnd or equivalent.
In BluepritnBackend we'll catch the call to onDragStart and wrap it in a SyntheticDragEvent, just as we do for mouse and key events. Our SyntheticDragEvent will have the dataTransfer prop described by the HTML drag event on which the drag callback can assign setData. This stuff is just regular JS.
We'll have a <DropTarget> component or a dropTarget prop on view along with a onDrop callback prop which receives a SyntheticDragEvent instance. The dropTarget callback can then inspect the SyntheticDragEvent's dataTransfer prop with user defined data to perform operations (i.e. drag sample file to target and load onDrop).

@nick-thompson, would you mind a quick scan of this based on our earlier discussions and let me know if anything needs correcting? I should be getting onto this one asap.

Yep, this looks good. I want to slightly clarify a few things:

I generally think we should break this effort up into two passes. In the first pass, we'll implement the notion of dragging, and in the second pass, we'll implement the notion of dropping.
The first pass, dragging, covers most of the bullet points above. The part that I want to flesh out a bit here is this: the idea behind __BlueprintNative__.setDragData is that during the drag operation, we will want to attach any notion of the drag data (i.e. dataTransfer.setData) to ReactApplicationRoot, who is the real arbiter of the drag operation. The reason for this is that the user will potentially want to drag a component from within the ReactApplicationRoot to somewhere outside the ReactApplicationRoot (i.e. another part of the application written in regular JUCE, or even outside the window like onto the desktop). ReactApplicationRoot will need to know this data to implement shouldDropFilesWhenDraggedExternally: https://docs.juce.com/master/classDragAndDropContainer.html#a69b389d34bc9748eb5f82a8995aae28d
I think that's a good stopping point for a first PR: implement dragging + dataTransfer + dropping text/files externally.
In the second PR we'll address how to equip blueprint::View components for dropping. Initially, I thought I'd prefer to just equip any View with the ability to be a drop target, as we see in Web. But I feel we can simplify that API with the introduction of a DropTarget view. So...
The DropTarget will be a new native View that simply inherits blueprint::View and juce::DragAndDropTarget and implements isInterestedInDragSource to return true all the time (we can get into the specifics of ignoring drop events based on their data type later). Besides the DragAndDropTarget interface, our DropTarget should function like a totally normal <View/>
We can raise the onDragEnter, onDragOver, and onDrop events into js land with synthetic drag events.
Ideally, at the beginning of the drag operation, ReactApplicationRoot can enumerate this SourceDetails struct with the data it received from javascript via the setDragData callback in the syntheticDragEvent callback. That way, when we receive the itemDropped callback in our blueprint::DropTarget, we can push that same var into a new SyntheticDragEvent so that the receiver in javascript-land can access the drag data as expected

Let me know if I missed anything!

Yep, this looks good. I want to slightly clarify a few things:

I generally think we should break this effort up into two passes. In the first pass, we'll implement the notion of dragging, and in the second pass, we'll implement the notion of dropping.
The first pass, dragging, covers most of the bullet points above. The part that I want to flesh out a bit here is this: the idea behind __BlueprintNative__.setDragData is that during the drag operation, we will want to attach any notion of the drag data (i.e. dataTransfer.setData) to ReactApplicationRoot, who is the real arbiter of the drag operation. The reason for this is that the user will potentially want to drag a component from within the ReactApplicationRoot to somewhere outside the ReactApplicationRoot (i.e. another part of the application written in regular JUCE, or even outside the window like onto the desktop). ReactApplicationRoot will need to know this data to implement shouldDropFilesWhenDraggedExternally: https://docs.juce.com/master/classDragAndDropContainer.html#a69b389d34bc9748eb5f82a8995aae28d
I think that's a good stopping point for a first PR: implement dragging + dataTransfer + dropping text/files externally.
In the second PR we'll address how to equip blueprint::View components for dropping. Initially, I thought I'd prefer to just equip any View with the ability to be a drop target, as we see in Web. But I feel we can simplify that API with the introduction of a DropTarget view. So...
The DropTarget will be a new native View that simply inherits blueprint::View and juce::DragAndDropTarget and implements isInterestedInDragSource to return true all the time (we can get into the specifics of ignoring drop events based on their data type later). Besides the DragAndDropTarget interface, our DropTarget should function like a totally normal <View/>
We can raise the onDragEnter, onDragOver, and onDrop events into js land with synthetic drag events.
Ideally, at the beginning of the drag operation, ReactApplicationRoot can enumerate this SourceDetails struct with the data it received from javascript via the setDragData callback in the syntheticDragEvent callback. That way, when we receive the itemDropped callback in our blueprint::DropTarget, we can push that same var into a new SyntheticDragEvent so that the receiver in javascript-land can access the drag data as expected

Let me know if I missed anything!


REQUEST: Disable auto-retry upon any failure/error

An option to disable any and all automatic retries, for anything other than a mod_md perfect success.
By the time I can see that it failed, it's already retried at least once.  The limit for letsencrypt staging is 60 failures per hour (only 5 for production) with other restrictions in tandem.  As best I can tell, letsencrypt doesn't specify "you're rate limited", and instead fails without any notification and mod_md continues retrying, regardless.  This makes troubleshooting quite difficult when each apache restart ends up retrying multiple times when I want to test just once to narrow down what the issue might be.
I'm still trying to figure out why my certs won't renew (for the past month and a half), and time is running out, haha.

Side note:
Thankfully, the archived certs (thank you!) let me look far back enough to see that at one point it setup challenges as http-01, and in all of the failures I've seen tls-alpn-01.
There was always success with staging, but 100% failure with production letsencrypt renewals and no helpful failure information other than "internal failure".  Even on recent successes with cert renewals, the type of challenge wasn't logged for some reason, so I never knew those successes used anything different.  I had to go back many, many months to find a log that showed http-01 which helped me realize that it was something new to try.  Setting MDCAChallenges http-01 in httpd.conf resolved the issue which I have no idea how it began or why letsencrypt staging worked flawlessly.
It always said "internal error" and there was nothing useful in the apache log or job.json:
"status": 20014,
"status-description": "Internal error (specific information not available)",
"detail": "Unable to retrieve rsa certificate chain.",
It was the challenge setup that was failing, so hopefully this will be useful for internet searches or gives you more info to make a new error message.

@Jon8RFC that is good to know. I have to reproduce this failure and check the messages/logs the module gives here. It should be able to
a. be more helpful in informing about the cause
b. stop retrying if the problem can only be fixes by a change in server configuration

I'm not comfortable publicly posting my configs, but if there's an email I can send them to, I'm happy to send my entire apache configs if that's helpful.

This issue remains open and is also part of the (now fixed) #227. The basic question is when mod_md shall retry and when/if it shall abstain. And it's no easy answer.
I guess what I can see is that the module carries a list of CA error codes that indicates a failure with the input and not something temporary. For theses errors, it does not make sense to retry again in a couple of minutes.
However, even  CAs can have bugs and a seemingly permanent error code might be fixed on the next day. So, I think that a list of error codes that immediately switches to the largest retry interval (daily) would make most sense. And retain the perseverance to live through error conditions.

This issue remains open and is also part of the (now fixed) #227. The basic question is when mod_md shall retry and when/if it shall abstain. And it's no easy answer.
I guess what I can see is that the module carries a list of CA error codes that indicates a failure with the input and not something temporary. For theses errors, it does not make sense to retry again in a couple of minutes.
However, even  CAs can have bugs and a seemingly permanent error code might be fixed on the next day. So, I think that a list of error codes that immediately switches to the largest retry interval (daily) would make most sense. And retain the perseverance to live through error conditions.

That sounds great.  From what I remember, hiccups at Let's Encrypt were rarely longer than a day, so a 1 day interval is excellent and avoids rate-limiting, especially since the default mod_md renewal has a 1-month buffer to work with.

That sounds great.  From what I remember, hiccups at Let's Encrypt were rarely longer than a day, so a 1 day interval is excellent and avoids rate-limiting, especially since the default mod_md renewal has a 1-month buffer to work with.

@Jon8RFC coming back to your original issue. If I understand correctly, you had set "tls-alpn-01" as challenge and that let to the "internal error" that gave you no hint as to what was wrong?

@Jon8RFC coming back to your original issue. If I understand correctly, you had set "tls-alpn-01" as challenge and that let to the "internal error" that gave you no hint as to what was wrong?

@icing I didn't have the challenge manually set (it was doing whatever was default), but when looking back at much older logs it did show which challenge type it used and I could see that it was normally succeeding with http-01 in the past, and old failures with tls-alpn-01 (it alternated on its own and I never set either one), but I don't recall the situation of those failures, and it may have been that the older apache versions cooperated better with the newer mod_md.  When I manually set it to http-01, then things worked.
One issue was that I didn't know that the internal error was related to the challenge in those failures.  The logs didn't indicate that it failed at the challenge like the much older logs did, for some reason, so I'm wondering if it was related to older apache (2.4.43 or older) being more compliant than 2.4.43a - 2.4.46.  Or, possibly, it was a mismatch of openssl when I manually updated and didn't know what I was doing?  I'll keep this in mind with the next openssl update and try manually updating.
Another issue was that the logs didn't show the failure OR success of the challenges in the logs (during the time of things not working), just that it worked.  In those logs where it succeeded, it didn't show which challenge type it used.  Only when looking back at much older logs did it log the challenge type successes and failures.
I do see the challenges showing up now, but the "Setting up challenge 'tls-alpn-01' for domain jon8rfc.homeip.net" is what was missing in both the successes and the failures.  When it failed, it jumped to "Monitoring challenge status for jon8rfc.homeip.net", so when it failed, I didn't know it failed at tls-alpn-01 because it wasn't showing that in the successes or failures, for some reason.

@icing I didn't have the challenge manually set (it was doing whatever was default), but when looking back at much older logs it did show which challenge type it used and I could see that it was normally succeeding with http-01 in the past, and old failures with tls-alpn-01 (it alternated on its own and I never set either one), but I don't recall the situation of those failures, and it may have been that the older apache versions cooperated better with the newer mod_md.  When I manually set it to http-01, then things worked.
One issue was that I didn't know that the internal error was related to the challenge in those failures.  The logs didn't indicate that it failed at the challenge like the much older logs did, for some reason, so I'm wondering if it was related to older apache (2.4.43 or older) being more compliant than 2.4.43a - 2.4.46.  Or, possibly, it was a mismatch of openssl when I manually updated and didn't know what I was doing?  I'll keep this in mind with the next openssl update and try manually updating.
Another issue was that the logs didn't show the failure OR success of the challenges in the logs (during the time of things not working), just that it worked.  In those logs where it succeeded, it didn't show which challenge type it used.  Only when looking back at much older logs did it log the challenge type successes and failures.
I do see the challenges showing up now, but the "Setting up challenge 'tls-alpn-01' for domain jon8rfc.homeip.net" is what was missing in both the successes and the failures.  When it failed, it jumped to "Monitoring challenge status for jon8rfc.homeip.net", so when it failed, I didn't know it failed at tls-alpn-01 because it wasn't showing that in the successes or failures, for some reason.

So, the differences came when switching from the mod_md in 2.4.43 (or older) to the 2.4.46?

So, the differences came when switching from the mod_md in 2.4.43 (or older) to the 2.4.46?

I'm wondering if maybe it was apache-related, but I carried over the same 2.3.3-beta mod_md so the variable would be apache rather than mod_md.
Or, possibly my manual updates of openssl causing some strange mismatch but manually updating didn't cause issues with mod_md or my site in other instances.  Unfortunately, I cleaned out old stuff now that things were resolved so I can't check for specific dates.

I'm wondering if maybe it was apache-related, but I carried over the same 2.3.3-beta mod_md so the variable would be apache rather than mod_md.
Or, possibly my manual updates of openssl causing some strange mismatch but manually updating didn't cause issues with mod_md or my site in other instances.  Unfortunately, I cleaned out old stuff now that things were resolved so I can't check for specific dates.

Ok. I will close this issue since there is - at the moment - no more to investigate. May it resurface in the future or remain silent forever.

Ok. I will close this issue since there is - at the moment - no more to investigate. May it resurface in the future or remain silent forever.


Rarible Protocol Starter App

https://docs.rarible.org/starter-app
https://github.com/austintgriffith/scaffold-eth/tree/rarible-starter-app

#1 Session
Deployed on Ropsten Network

https://ropsten.rarible.com/token/0xaed6CC6936D2C659719Aef48D791A85Fc88d2e14:1?tab=owners

#2 Session (Next)
Deploy on FUSE Network

History of Rarible usage: https://ropsten.rarible.com/token/0xaed6CC6936D2C659719Aef48D791A85Fc88d2e14:1?tab=history


allow cross compiling for Windows Store, UWP, etc.

for more info see https://cmake.org/cmake/help/latest/manual/cmake-toolchains.7.html#cross-compiling-for-windows-store

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.


how to get the instance self in closure?

        do {
            try hookInstead(targetClass: UIViewController.self, selector: #selector(UIViewController.viewDidAppear(_:)),closure: { originalFunc,animated in
                originalFunc(animated)
                print(self.title)  /* here I want print title of UIViewController */
                } as @convention(block) ((Bool)->Void,Bool)->Void )
        }catch let error {
            print("HOOKERROR:",error)
        }

Nice point. Actually I am doing this feature now. May finish it this week.

太好了，静候佳音
Yanni Wang 王氩<EMAIL_ADDRESS>于2020年8月25日周二 下午2:43写道：

Nice point. Actually I am doing this feature now. May finish it this week.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/623637646/SwiftHook/issues/1#issuecomment-679835975,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ADKQFSCBPQLJTR7JPORJDXTSCNMR3ANCNFSM4QKJD65Q
.

（抱拳）

Done. Please upgrade the latest version 2.0.0 and try this code:
do {
    try hookBefore(targetClass: UIViewController.self, selector: #selector(UIViewController.viewDidAppear(_:)), closure: {
        viewController, selector, animated in
        print("UIViewController did appear")
        print("Title: \(viewController.title ?? "")")
    } as @convention(block) (UIViewController, Selector, Bool) -> Void)
} catch {}

Fix by https://github.com/623637646/SwiftHook/pull/2


Membership request

Application
Community Participant
Made contributions to OCM repos like ocm, clusteradm, cluster-proxy. Looking forward to making more contributions to the OCM community as a member.
Requirements
Have made multiple contributions to the project. Contribution may includes, but is not limited to:
Contributions

Register ManifestWorkReplicaSet webhook when feature is enabled
Check if there any managed clusters exists before hub cleanup
Fix "log.SetLogger(...) was never called" in registration webhook

Checklists

[x] Enabled [two-factor authentication] on their GitHub account.
[x] Contributing to community discussions (e.g. meetings, Slack, mailing list discussion).
[x] Subscribed to [https://groups.google.com/g/open-cluster-management].
[x] Have read the contributor guide.
[x] Actively contributing to 1 or more subprojects.

Sponsors

@zhujian7

+1
@RokibulHasan7 thanks for all your contributions!
/cc @qiujian16

thanks! invitation sent.

/close