colcon build --mixin release: moveit_task_constructor_core error

Description
Overview of your issue here.
Your environment

ROS Distro: Humble
OS Version: Ubuntu 22.04
python version: 3.10
https://moveit.picknik.ai/main/doc/tutorials/getting_started/getting_started.html
Followed the above tutorial with humble as the branch

During colcon build got the below error
Starting >>> moveit
--- stderr: moveit_task_constructor_core
CMake Error at python/pybind11/tools/FindPythonLibsNew.cmake:163 (message):
Python config failure:
Traceback (most recent call last):
File "<string>", line 6, in <module>

ImportError: cannot import name 'sysconfig'
Call Stack (most recent call first):
python/pybind11/tools/pybind11Tools.cmake:50 (find_package)
python/pybind11/tools/pybind11Common.cmake:192 (include)
python/pybind11/CMakeLists.txt:254 (include)

Failed   <<< moveit_task_constructor_core [1.30s, exited with code 1]
I seem to have sysconfig and it seems to work as well
I checked for the file FindPythonLibsNew.cmake and got the following
/home/2vin/.local/lib/python2.7/site-packages/pybind11/share/cmake/pybind11/FindPythonLibsNew.cmake
/home/2vin/.local/lib/python3.8/site-packages/pybind11/share/cmake/pybind11/FindPythonLibsNew.cmake
but I also seem to have the file in
/home/2vin/.local/lib/python3.10/site-packages/pybind11/share/cmake/pybind11/FindPythonLibsNew.cmake
but not detected in locate
so I have been trying everything I can since 2 days but unable to resolve it.

 I guess, you have multiple python binaries and the wrong one is used.
The cmake file should come from moveit_task_constructor/core/python/pybind11/tools/FindPythonLibsNew.cmake.
Maybe you can use colcon build --cmake-args --trace to get verbose cmake output and figure out which python binary is used.
As a last resort, I suggest cleaning up ~/.local/lib/python*. However, this might break other apps!

/home/2vin/ws_moveit/src/moveit_task_constructor/core/python/pybind11/tools/FindPythonLibsNew.cmake(129):  execute_process(COMMAND ${PYTHON_EXECUTABLE} -c
import sys;import struct;
import sysconfig as s
USE_SYSCONFIG = sys.version_info >= (3, 10)
if not USE_SYSCONFIG:
from distutils import sysconfig as ds
print('.'.join(str(v) for v in sys.version_info));
print(sys.prefix);
if USE_SYSCONFIG:
scheme = s.get_default_scheme()
if scheme == 'posix_local':
# Debian's default scheme installs to /usr/local/ but we want to find headers in /usr/
scheme = 'posix_prefix'
print(s.get_path('platinclude', scheme))
print(s.get_path('platlib'))
print(s.get_config_var('EXT_SUFFIX') or s.get_config_var('SO'))
else:
print(ds.get_python_inc(plat_specific=True));
print(ds.get_python_lib(plat_specific=True));
print(ds.get_config_var('EXT_SUFFIX') or ds.get_config_var('SO'));
print(hasattr(sys, 'gettotalrefcount')+0);
print(struct.calcsize('@P'));
print(s.get_config_var('LDVERSION') or s.get_config_var('VERSION'));
print(s.get_config_var('LIBDIR') or '');
print(s.get_config_var('MULTIARCH') or '');
RESULT_VARIABLE _PYTHON_SUCCESS OUTPUT_VARIABLE _PYTHON_VALUES ERROR_VARIABLE _PYTHON_ERROR_VALUE )
/home/ubuntu/ws_moveit/src/moveit_task_constructor/core/python/pybind11/tools/FindPythonLibsNew.cmake(161):  if(NOT _PYTHON_SUCCESS MATCHES 0 )
/home/ubuntu/ws_moveit/src/moveit_task_constructor/core/python/pybind11/tools/FindPythonLibsNew.cmake(162):  if(PythonLibsNew_FIND_REQUIRED )
/home/ubuntu/ws_moveit/src/moveit_task_constructor/core/python/pybind11/tools/FindPythonLibsNew.cmake(163):  message(FATAL_ERROR Python config failure:\n${_PYTHON_ERROR_VALUE} )
CMake Error at python/pybind11/tools/FindPythonLibsNew.cmake:163 (message):
Python config failure:
Traceback (most recent call last):
File "<string>", line 6, in <module>

ImportError: cannot import name 'sysconfig'
Call Stack (most recent call first):
python/pybind11/tools/pybind11Tools.cmake:50 (find_package)
python/pybind11/tools/pybind11Common.cmake:192 (include)
python/pybind11/CMakeLists.txt:254 (include)

Failed   <<< moveit_task_constructor_core [22.5s, exited with code 1]
I have also tried to check the python version from python terminal it seems to be 3.10 and also as you said it is being taken from moveit_task_constructor
I have actually upgraded fromubuntu 20 to 22 and then tries to install this and I have been facing issues continuously I have tried to resolve most of them but I am unable to solve this

/home/2vin/ws_moveit/src/moveit_task_constructor/core/python/pybind11/tools/FindPythonLibsNew.cmake(129): execute_process(COMMAND ${PYTHON_EXECUTABLE} -c import sys;import struct; import sysconfig as s USE_SYSCONFIG = sys.version_info >= (3, 10) if not USE_SYSCONFIG: from distutils import sysconfig as ds print('.'.join(str(v) for v in sys.version_info)); print(sys.prefix); if USE_SYSCONFIG: scheme = s.get_default_scheme() if scheme == 'posix_local': # Debian's default scheme installs to /usr/local/ but we want to find headers in /usr/ scheme = 'posix_prefix' print(s.get_path('platinclude', scheme)) print(s.get_path('platlib')) print(s.get_config_var('EXT_SUFFIX') or s.get_config_var('SO')) else: print(ds.get_python_inc(plat_specific=True)); print(ds.get_python_lib(plat_specific=True)); print(ds.get_config_var('EXT_SUFFIX') or ds.get_config_var('SO')); print(hasattr(sys, 'gettotalrefcount')+0); print(struct.calcsize('@p')); print(s.get_config_var('LDVERSION') or s.get_config_var('VERSION')); print(s.get_config_var('LIBDIR') or ''); print(s.get_config_var('MULTIARCH') or ''); RESULT_VARIABLE _PYTHON_SUCCESS OUTPUT_VARIABLE _PYTHON_VALUES ERROR_VARIABLE _PYTHON_ERROR_VALUE ) /home/ubuntu/ws_moveit/src/moveit_task_constructor/core/python/pybind11/tools/FindPythonLibsNew.cmake(161): if(NOT _PYTHON_SUCCESS MATCHES 0 ) /home/ubuntu/ws_moveit/src/moveit_task_constructor/core/python/pybind11/tools/FindPythonLibsNew.cmake(162): if(PythonLibsNew_FIND_REQUIRED ) /home/ubuntu/ws_moveit/src/moveit_task_constructor/core/python/pybind11/tools/FindPythonLibsNew.cmake(163): message(FATAL_ERROR Python config failure:\n${_PYTHON_ERROR_VALUE} ) CMake Error at python/pybind11/tools/FindPythonLibsNew.cmake:163 (message): Python config failure:
Traceback (most recent call last):
File "<string>", line 6, in <module>

ImportError: cannot import name 'sysconfig'
Call Stack (most recent call first): python/pybind11/tools/pybind11Tools.cmake:50 (find_package) python/pybind11/tools/pybind11Common.cmake:192 (include) python/pybind11/CMakeLists.txt:254 (include)
Failed <<< moveit_task_constructor_core [22.5s, exited with code 1] I have also tried to check the python version from python terminal it seems to be 3.10 and also as you said it is being taken from moveit_task_constructor I have actually upgraded fromubuntu 20 to 22 and then tries to install this and I have been facing issues continuously I have tried to resolve most of them but I am unable to solve this

Also distutils.setuptools exists but it seems to be generating deprecated warning

You still didn't figure out which python executable is called by cmake. Try to print the cmake variable PYTHON_EXECUTABLE in /home/2vin/ws_moveit/src/moveit_task_constructor/core/python/pybind11/tools/FindPythonLibsNew.cmake:129

It seems like it uses python3.6
I have tried to set -DPython _EXECUTABLE path/to/python for which i get
manually entered variabled were not used by project Python_EXECUTABLE


Add any usage documentation please

Any usage documentation please ?
For example I have a card.
Then I trying to create let fsrs = FSRS()
Then I trying to use fsrs.repeat(card:card, Date.now()) as I seen it in different languages implementations but have no clue what and how to do next.

@keepfocused this is how I use it:
    public func review(rating: Rating? = nil, card: FSRSCard) -> FSRSCard {
        let fsrs = FSRS()
        let now = Date()

        let scheduling = fsrs.repeat(card: card, now: now)

        if let rating = rating, let next = scheduling[rating] {
            return next.card
        } else {
            return card
        }
    }

When this is a new card with no data, you call this with the rating set to nil. After that, you pass in the card and the rating and get back the card with updated stats.

@keepfocused this is how I use it:
When this is a new card with no data, you call this with the rating set to `nil`. After that, you pass in the card and the rating and get back the card with updated stats.

Thanks. And next question is how do I get to know when card is done ?
Which state indicates me what card is reached its maximum level and now I can exclude it as "mastered" ?

@keepfocused you may be better off asking this on the main project. I just ported this code, I didn't design it.
However, my guess would be that there isn't such as thing as "maximum level". This algorithm just predicts when the card needs to appear next. So naturally as you master a card, it will appear further and further in the future. If you wanted to make a cutoff at ~5 years say, you could do that.


feat: configure client certificate and public network access

We used this module internally and made some changes which need to be compliant as per internal compliance policy.
Below are the changes -
log_analytics_workspace_id was mandate before now we have added a variable to handle it if this can be used or can be skip using the following  logs_analytics_enable.
We have added 2 more attributes to the webapp client_certificate_mode & client_certificate_enabled and we parameterized this attribute the public_network_access_enabled.
We have done a testing with these changes and it is working as expected.

Thanks for the swift response @hknutsen.
I have committed your suggestion and its looks good to me. Also, client certificate and public network access changes already applied to azurerm_windows_web_app.this.
In regards to the Log Analytics change: Is the goal to allow users to prevent the creation of the azurerm_monitor_diagnostic_setting.this resource? If yes, what's the reason for this request? (please note that this is a public repository, so no information related specifically to your company should be shared here. Feel free to contact me directly to explain your case.)
Yes, the goal is to allow users to prevent the creation of the azurerm_monitor_diagnostic_setting.this resource because we aim to provide flexibility in scenarios where logging is not required or desired.

[...] client certificate and public network access changes already applied to azurerm_windows_web_app.this.

Didn't notice in my initial review, but yes, this looks to already be in place.

Yes, the goal is to allow users to prevent the creation of the azurerm_monitor_diagnostic_setting.this resource because we aim to provide flexibility in scenarios where logging is not required or desired.

I think it would be a good idea to remove the changes to related to the diagnostic setting in this PR, then create a separate PR where we can continue to discuss a potential implementation.

I'll create a quick PR with a suggested implementation for conditional diagnostic setting.

Really appreciate your prompt response @hknutsen. I have removed log diagnostic setting.


add a newline at the end of json loglines

I was trying to insert json formatted logs to graylog and noticed that the logs aren't newline seperated.
This little change fixed the issue for me.

That is the role of the end writer to do that. Some outputs like syslog don't need this new line for instance. With your change, I suspect that piping the JSON output to the console output will produce double newlines.

Ah ok, makes sense.
So wrapping os.Stdout/os.Stderr in a struct with a custum write method and use that writer in xlog.NewJSONOutput is the recommended way if i wan't to log to file or journal ?
Something like:
type writer struct{}
func (w *writer) Write(data []byte) (int, error) {
	os.Stdout.Write(append(data, '\n'))
	return len(data) + 1, nil
}

func main() {
	c := alice.New()
	host, _ := os.Hostname()

	conf := xlog.Config{
		Level: xlog.LevelInfo,
		Fields: xlog.F{
			"role": "my-service",
			"host": host,
		},
		Output: xlog.NewOutputChannel(xlog.NewJSONOutput(&writer{})),
	}

       c = c.Append(xlog.NewHandler(conf))


Update install-reporting-services-native-mode-report-server.md

Just markdown corrections done.

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

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

#sign-off

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


Small number of training images

Please correct me if I'm wrong. I can see that the training dataset consists of only 291 images. Isn't that extremely small? The original paper uses 50k images of the size 256x256. I don't think that 291 images are enough to achieve the desirable result.
P.S. how much time does it take to train the network for gaussian noise?

Isn't that extremely small?

It depends. For example, the number of images required for a super resolution task is relatively small. Denoising task, the task noise2noise is going to solve, is task to super resolution, thus I think the number of images required for training is not so large.
Anyway, it is better to increase the training data if the performance matters. You can simply set --image_dir to the directory including a large number of images.

P.S. how much time does it take to train the network for gaussian noise?

About six hours for 60 epoch training on GTX 1080.

I understand that you don't need much data for some tasks. I though that

Is the time taken to train just 291 images or did you train it with larger dataset. Also can you tell me the RAM of your machine? Thanks in advance.

how can i get that data set of 291 images


constrained property optimization

Hello,
Is there a way to reproduce the Constrained property optimization experiments from GCPN and GraphAF on torchdrug?
Similarly to the property optimization from https://torchdrug.ai/docs/tutorials/generation.html
Thanks!

Yes, you can. The only difference between Constrained property optimization and property optimization is that we start from an existing subgraph in the former case. To implement it, you basically need to modify the part of codes that handle the graph initialization for training and inference.


How to get IP address of the client?

I wrote small GET method that can be accessed from any IP address, so how can I get the IP address of the client? I tried following and it works on my local computer, not working on the deployed server.
HTTP.methods({
    '/api/test': {
        get: function (data) {
            var ip_address = this.requestHeaders['x-forwarded-for'];
            console.log(ip_address);
            return 'Test';
        }
    }
});

ip_address = this.request.headers['x-forwarded-for'];
I am using nginx,  ip_adress = this.connection.httpHeaders['x-real-ip']
try it~

@DevinXian Thanks for sharing your way, for me this.connection is undefined, so I've tried
ip_address = this.requestHeaders['x-real-ip'] and is empty.

@DevinXian I found it:
HTTP.methods({
    '/api/test': {
        get: function (data) {
            var ip_address = this.request.connection.remoteAddress;
            console.log(ip_address);
            return 'Test';
        }
    }
});


doc: prefer Delve over gdb

We have a couple documents that discuss debugging: Debugging with GDB  and Diagnostics.
At this point Delve is a much better Go debugger than GDB is. It understands Go data structures better, it can handle expressions better, it doesn't get confused by goroutines, etc. GDB can be better for cgo, or debugging the runtime itself, but I think most users are much better served by Delve.
If everyone agrees, I would like to say so on the GDB document, and strengthen the wording on the diagnostics page a little.
cc @aarzilli @derekparker @ianlancetaylor @hyangah

Does Delve support all architectures now?

I don't believe Delve works on ppc64le.
On Tue, Dec 12, 2017 at 2:40 PM, cherrymui<EMAIL_ADDRESS>wrote:

Does Delve support all architectures now?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/golang/go/issues/23108#issuecomment-351187005, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AI_wjOqrdlSLKAQNt5cCI0KLXK2JAbogks5s_uStgaJpZM4Q_j3z
.

That's a good point. Sorry for the Intel centrism. I'd still like to recommend it, but with that important caveat.

Unfortunately support for some BSD OSes is also not present and 32bit support is also missing. I'm not sure about the ARM support.
I wonder if the right people to help Delve get in a better shape on those platforms know about it?

I agree with your proposal as amended.


Question / Bug. How to change React Material UI slider label text

I need to change text in label, not background color

const theme = createMuiTheme({ overrides:{     MuiSlider: {          valueLabel: {              color: 'black',          },     } }

[x ] The issue is present in the latest release.
[x ] I have searched the issues of this repository and believe that this is not a duplicate.

Current Behavior 😯
It changes only tbackground  color, not text color
Expected Behavior 🤔

It should change only text color, not background color

Tech
Version

Material-UI
v4.9.0

React
16.12.0

Browser
Google Chrome 80

I fixed this problem by changing constrastText to "my color" pallete theme

@Ghost180195 Thanks for raising this issue. At first glance, it seems that we will need to update the style of the component:

https://material.io/components/sliders/#anatomy

https://www.google.com/flights
We should be able to move from 3 to 1 or 2 elements. In any case, it's likely a breaking change, so something to plan for v5.
In the meantime, I would propose that we make the SliderValueLabel a public component:
diff --git a/packages/material-ui/src/Slider/ValueLabel.js b/packages/material-ui/src/Slider/ValueLabel.js
index e2f21ec0d..6b57749d5 100644
--- a/packages/material-ui/src/Slider/ValueLabel.js
+++ b/packages/material-ui/src/Slider/ValueLabel.js
@@ -69,4 +69,4 @@ function ValueLabel(props) {
   );
 }

-export default withStyles(styles, { name: 'PrivateValueLabel' })(ValueLabel);
+export default withStyles(styles, { name: 'MuiSliderValueLabel' })(ValueLabel);

@Ghost180195 Do you want to work on the problem? :)

The latest design of the slider I could find on Google's product:

https://www.google.com/travel

https://www.google.com/travel/flights

Google Pixel 4 (2019) Android 11 (Latest version)
Any other idea where we could find a slider to benchmark?

More sources to benchmark:

Adobe XD kit released in August 2020:

Flutter component https://api.flutter.dev/flutter/material/Slider-class.html

Material Components Android: https://github.com/material-components/material-components-android


net::ERR_TOO_MANY_REDIRECTS if I want to open website in puppeteer

Puppeteer version: 1.19.0
Platform / OS version: macOS Mojave 10.14.6
URLs (if applicable): https://www.washingtonpost.com/news/acts-of-faith/wp/2017/06/30/trump-promised-to-destroy-the-johnson-amendment-congress-is-targeting-it-now/
Node.js version: v12.1.0

app.js
(async () => {
  const browser = await puppeteer.launch();
  const page = await browser.newPage();

  await page.goto('https://www.washingtonpost.com/news/acts-of-faith/wp/2017/06/30/trump-promised-to-destroy-the-johnson-amendment-congress-is-targeting-it-now/');

  const html = await page.content()
  console.log(html)
  await browser.close()
})()

What is the expected result?
html structure of website
What happens instead?
When I try to open a washington post article in puppeteer, I get error:
Error: net::ERR_TOO_MANY_REDIRECTS
internal/process/warning.js:27 (node:70458) UnhandledPromiseRejectionWarning: Error: net::ERR_TOO_MANY_REDIRECTS at https://www.washingtonpost.com/news/acts-of-faith/wp/2017/06/30/trump-promised-to-destroy-the-johnson-amendment-congress-is-targeting-it-now/
    at navigate (.../node_modules/puppeteer/lib/FrameManager.js:121:37)
    at processTicksAndRejections (internal/process/task_queues.js:89:5)
  -- ASYNC --
    at Frame.<anonymous> (.../node_modules/puppeteer/lib/helper.js:111:15)
    at Page.goto (.../node_modules/puppeteer/lib/Page.js:674:49)
    at Page.<anonymous> (.../node_modules/puppeteer/lib/helper.js:112:23)
    at .../app.js:255:14
    at processTicksAndRejections (internal/process/task_queues.js:89:5)

I tried to abort navigation redirects based on this, but then I get Error: net::ERR_FAILED
internal/process/warning.js:27 (node:70488) UnhandledPromiseRejectionWarning: Error: net::ERR_FAILED at https://www.washingtonpost.com/news/acts-of-faith/wp/2017/06/30/trump-promised-to-destroy-the-johnson-amendment-congress-is-targeting-it-now/
    at navigate (.../node_modules/puppeteer/lib/FrameManager.js:121:37)
    at processTicksAndRejections (internal/process/task_queues.js:89:5)
  -- ASYNC --
    at Frame.<anonymous> (.../node_modules/puppeteer/lib/helper.js:111:15)
    at Page.goto (.../node_modules/puppeteer/lib/Page.js:674:49)
    at Page.<anonymous> (.../node_modules/puppeteer/lib/helper.js:112:23)
    at .../app.js:247:14
    at processTicksAndRejections (internal/process/task_queues.js:89:5)

I don't get any error with your code. Can you try with proxy/vpn?

This doesn't seem to be a bug in Puppeteer, but rather with the website which redirect-loops in certain scenarios.

@entrptaher I tried VPN and US endpoint and it really works.
@mathiasbynens Yes, website does too many redirects for requests from different location.
I am wondering, why I get this error in Puppeteer but not in desktop browser?

It's probably checking some fingerprint or anti bot measurements. You can try https://www.npmjs.com/package/puppeteer-extra-plugin-stealth to see if you have any success. Also, you can try with proxies.

Closing this as it's not a bug in Puppeteer. Thanks, everyone!


[networkx] Update networkx documents

What do these changes do?

Related issue number

Fixes

closed, will open another pull request when ready.


API Changes

It's not explicitly defined, but will 1st party tools like O365, D365, and Azure AD Connect be automatically updated to support the new Graph API for Azure AD Roles and Azure Resources?
Thank you!

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

ID: e6b9af88-b067-78b0-a482-377a18f72cdc
Version Independent ID: d8f81029-66c8-03ce-803f-4c60eb737f81
Content: Managing Azure AD roles in Privileged Identity Management (PIM)
Content Source: articles/active-directory/privileged-identity-management/azure-ad-roles-features.md
Service: active-directory
Sub-service: pim
GitHub Login: @curtand
Microsoft Alias: curtand

@DaFitRobsta Thanks for your feedback! We will investigate and update as appropriate.

@DaFitRobsta sorry but I do not see any mention of these products being impacted with the new Graph API change.  Are you referring to you any other document ?

@SaurabhSharma-MSFT,
I wanted to verify that only 3rd party apps that make REST API calls to Graph API would need to be updated, while 1st party apps were already covered.  You answered my question and appreciate you validating 3rd party apps are what's in scope with Graph API updates. ;)


Update mails to HTML

On the email_template branch it is now possible to create HTML Mails with translation depending on the user.
Somebody needs to update our current emails to make use of this function and update the tests which are disabled currently.

#250


Location / Cart - Only adding items of one location

Expected behavior:
I setup the system with multiple locations. I have items of location A and location B. If I add my first item of location, I would like to achieve, that from this point on I could only add items of location A. Once I reset the cart, I would be able to start over and pick items from location B, and further on only from location B, because the first cart item was from location B.
Actual behavior:
Currently I can add items from location A and location B which does not make sense for my understanding.
Reproduce steps:
(Describe the steps to reproduce the problem here)
Version:
3.0.4-beta.19
Additional Information:
(Additional information, if any)

Fixed: tastyigniter/ti-ext-cart@29f013f3545435c563b27bb3105b9a2fcc8720b2 and tastyigniter/flame@d9f3ce850ece21adc298f171794b0031ffe74d26


Write a sample dynamically registered secure element driver with no on-SE state

Write a sample driver for a secure element that does not store keys, but hands a wrapped key to the generic code. See https://github.com/ARMmbed/mbedtls/issues/3287 for the design and https://github.com/ARMmbed/mbedtls/issues/3289 for the implementation.
This is similar in purpose to the sample driver for ATECC608A (which is used by the Mbed OS Examples for the ATECC608A), but it does not need to be similar in implementation. In particular this does not need to be tied to Mbed OS (but can be).
The goal of this task is to write a driver, and enough infrastructure around it to at least smoke-test it. This infrastructure can be either some basic testing or a sample application.

I'd be happy to contribute, since we're trying to do this exact thing for the EFR32MG21's SE driver.

There is a new secure element interface in https://github.com/ARMmbed/mbedtls/pull/3313 with statically registered drivers only. The corresponding task for this new interface is https://github.com/ARMmbed/mbedtls/issues/3343. We should keep the current interface at least for a short time to keep backward compatibility, and we may keep it for a long time because it allows dynamic registration of drivers. But this is not a current priority.


counter_culture_fix_counts update with wrong results

Maybe I am doing something wrong, I have a pc_blog table, with 3 column each link associated to category/subcategory/subsubcategory.
class PcBlog < ActiveRecord::Base
  belongs_to  :subsubcategory1, class_name: "PcSubsubcategory"
    counter_culture [:subsubcategory1, :pc_subcategory, :pc_category], :column_name => "pc_blog_count"
    counter_culture [:subsubcategory1, :pc_subcategory], :column_name => "pc_blog_count"
    counter_culture [:subsubcategory1], :column_name => "pc_blog_count"
  belongs_to  :subsubcategory2, class_name: "PcSubsubcategory"
    counter_culture [:subsubcategory2, :pc_subcategory, :pc_category], :column_name => "pc_blog_count"
    counter_culture [:subsubcategory2, :pc_subcategory], :column_name => "pc_blog_count"
    counter_culture [:subsubcategory2], :column_name => "pc_blog_count"
  belongs_to  :subsubcategory3, class_name: "PcSubsubcategory"
    counter_culture [:subsubcategory3, :pc_subcategory, :pc_category], :column_name => "pc_blog_count"
    counter_culture [:subsubcategory3, :pc_subcategory], :column_name => "pc_blog_count"
    counter_culture [:subsubcategory3], :column_name => "pc_blog_count"

the counter_culture works beautifully when subsubcategory1/2/3 column changing with the pc_blog_count in each association updated correctly, however, when I run PcBlog.counter_culture_fix_counts at rails c, it generated different results everytime, as: => [{:entity=>"PcCategory", :id=>1, :what=>"pc_blog_count", :wrong=>1, :right=>2}, {:entity=>"PcCategory", :id=>2, :what=>"pc_blog_count", :wrong=>0, :right=>1}, {:entity=>"PcCategory", :id=>3, :what=>"pc_blog_count", :wrong=>3, :right=>6}, {:entity=>"PcCategory", :id=>7, :what=>"pc_blog_count", :wrong=>1, :right=>0}, {:entity=>"PcSubcategory", :id=>3, :what=>"pc_blog_count"....
as I am still in development mode, I try 3 times, all with different results, and, the result is not the correct ones.
again, maybe I am doing something wrong...

Hm; I think the issue here is that you have three different counter caches all modifying the same column: subsubcategory1, subsubcategory2 and subsubcategory3 all modify the pc_blog_count column. When you run fix counts, it'll go look at, say, PcSubsubcategory and try and count all the matching PcBlog. But that'll fail because it would have to take into account the three different associations; rather, it takes them one at a time.
The way this is "intended" to be used would be to have three separate counter columns for each of these relations. However, if that's not your use case I'd suggest just whipping up a couple of lines of code yourself that correctly fix these counts. I'd imagine that's a lot easier than trying to do this within counter_culture. You can still use the logic that updates caches and just never call fix_counts and that should work.
Hope this helps.

Thanks, I thought I was doing something wrong, in this case, I will write a console code to update it, thanks.


Add the ability to reference particles container from parent

In order to comply with WCAG A requirements, I had to add a play/pause button to the particle effect on my website. However, I had no method of accessing the underlying Particles Container instance from this component. This PR adds that functionality and makes use of refs to easily add in a ref.current.pause() and ref.current.play() functionality to unblock my usage:
const Comp = () => {
	const ref = React.useRef()

	const play = () => {
	    ref.current.play();
	}

	const pause = () => {
	    ref.current.pause();
	}

	return (
	  <Particles
	          height={"100vh"}
	          width={"100vw"}
	          className="particlesContainer"
	          params={particlesParams}
	          forwardRef={ref}
	        />
	)
}

Thanks for your contribution.
It has now been merged and available in v3.2.1.


[CRITICAL] Dapr resiliency deployed, and no docs on how to adjust default timeout

Dapr resiliency was recently deployed, and customers are starting to see logs like

Error processing operation DaprBuiltInServiceRetries. Retrying in 1s…

Because default timeout is 15s. Some customers might have Service Invocations taking longer than that. These used to work, but suddenly broke.
This issue is a: (mark with an x)

[ ] bug report -> please search issues before submitting
[ ] documentation issue or request
[x] regression (a behavior that used to work and stopped in a new release)

Issue description
See comments:

https://github.com/microsoft/azure-container-apps/issues/585#issuecomment-1786778480
https://github.com/microsoft/azure-container-apps/issues/585#issuecomment-1787039991

Steps to reproduce

Do service invocation using Dapr that takes longed than 15s
Dapr resiliency kicks in and retries

Expected behavior [What you expected to happen.]
Service Invocation should continue to work as it did before Dapr resiliency support was deployed.
Actual behavior [What actually happened.]
Service Invocation taking longer than 15s does not work

Hi @bjorkstromm,
Thank you for bringing this issue to our attention.
We are rolling out a fix for this issue, and we anticipate its completion by end of day ( in the PST time zone). Please let me know if you are still experiencing the issue tomorrow or have any further questions/concerns.

Thank you @greenie-msft for fast response 👍 I'll keep you posted.

@greenie-msft

We are rolling out a fix for this issue, and we anticipate its completion by end of day ( in the PST time zone). Please let me know if you are still experiencing the issue tomorrow or have any further questions/concerns.

Confirmed that everything is working again. Thank you! Closing this issue now.


boostrap script should remove the readme_includes directory in newly created projects

readme_includes is only needed for making the README.md files using bionitio-readme, and should be removed from newly created projects generated by the bootstrap script.

Fixed in 3149f5c


installation branding and logo location and types

I had a question where someone had tried to use the management option to change the logos that appear top left and right of the workspace so I reminded myself whether that still works or not and it seems it has no effect. We should probably remove those form fields or else enable this to work again?
I know we have the branding folder for this but in testing that I wanted to use an .svg rather than png and that doesn't seem to work either, whereas .png does. I was trying to remember if we made this possible when @JohnSmith-LT worked on all the logo permutations for the project templates/themes but perhaps we didn't because using logo_right.svg doesn't work but logo_right.png does. Ideally we should change this so that any format works especially now that the newer image formats are becoming more popular.

I'm going to close this because although it would probably still be quite useful to change the cod and make it more flexible (including management options) it turns out I could achieve what was needed with some custom css. Part of that is a bit of a hack but it works so will close this issue for now at least.

@takadachi the css I've used is kind of specific to the requirements of the university I've tested this for but the basic principal is as follows:
in the branding folder you should find a README.txt file that says:
-- You can place custom logo's here.
Just place 1 or 2 files called logo_left.png and/or logo_right.png
So you can replace the default logos by placing files with those exact names in the branding folder.
What the README doesn't say but I suspect our release notes do (for the version when this was first added) is that you can add a branding.css file in that location and add css to change relevant aspects of the workspace etc.
You'll need to view the relevant core-files or inspect the source with dev tools to identify what you want to change but I guess the trick that I used to change the logo to an svg without changing the core code (because there isn't currently a specific selector) was:
.topbar > div:nth-child(1) {
width: 50%;
height: 55px !important;
background-image:url(logo_right.svg)!important; background-repeat:no-repeat; background-position:right; margin-right:22px !important;margin-top:12px; float:right
}
There's bits of that specific to the logo I've used so px values might need to be changed for different logos.
HTH
Ron


implements 3d rotations

It looks like Travis is failing because the example (over in asdf-standard) is missing a required "direction" property.

@mdboom Are you OK with this? It's not new but a copy of #71 to avoid dealing with merge conflicts.


CI for Node

Initializes with two players
Starts the game with a random player turn
Sets the current player to be whoever it is not


Post release 2.5.1-gradle

Update docs, actual release is not from master
See: https://github.com/GoogleContainerTools/jib/pull/2794

2.5.1 is out, PTAL


Implement HTTP API

Implement Channel Service
This is an initial commit for the Channel Service. It sets up the required utilities to implement the API functions described in the design document.
conf.neutron module supplies a neutron configuration group, following the pattern of the other groups
Two modules (keystone, auth) are added in the neutron package which facilitate authentication to the neutron server. These modules were lifted from doni.
Several new exception types have been added:
- CatalogNotFound, KeystoneUnauthorized, KeystoneFailure, and ConfigInvalid were added with the Keystone auth modules
- MalformedChannel is used in channel validation if OpenStack returns a malformed channel that was possibly created manually or via a bug in the neutron plugins
A number of new utility functions are introduced to extract information from OpenStack API responses and convert them back and forth between that format and the Channel API format.
The api.schema module provides classes, functions, and constants for validating request schema. For the initial release, this will only end up being used in CreateChannel and UpdateChannel, but this makes API functions that read the request body have an easier time making assumptions about the data that is in those requests, and will also make tunelo easier to extend in the future.
A lot of the utility functions I believe would be made obsolete from a future refactor which will re-organize the internal representation of neutron data into classes. However, for now, they remain.
Add ListChannel
Implements the ListChannel API function. Pulls down all ports, then sorts them by device owner into spokes and hubs.
Add GetChannel
Implements the GetChannel API function. Implements a utility function which is able to get a channel spoke port and its peer ports by the spoke's UUID. The API function calls that function, and returns the information as a channel representation.
Add CreateChannel
Implements the CreateChannel API function. Implements functions for creating ports and subnets, as well as resolving channel agent hosts.
At the moment, the code is very branchy and relies a lot on resolving data from dicts with strings. After realizing that OpenStack is extremely inconsistent with the keys they use to represent the same data in their API, it seems obvious that Neutron data and Channel data should be represented by objects to avoid confusion to readers and future programmers.
The code is also fairly sloppy, as it made sense that refactoring it to be a bit neater would be a part of the refactor mentioned above.
Add DestroyChannel
Implements the DestroyChannel API function.
Fetches a channel spoke port and its peer hub ports by UUID, and deletes the spoke port. Also removes the spoke representation from the hubs' peer lists. Automatically deletes the hub port if it no longer has any peer ports.
Other notes:
As mentioned, I want to refactor a lot of the code to make use of classes to abstract out the sloppy use of dictionaries, and facilitate error checking, which is not as thorough as I'd like it to be. I also need to implement UpdateChannel, and smoke testing.
There are several TODOs in this PR which I am aware of and should be simple enough to correct.
I also believe that there are atomicity issues with OpenStack for the functions which require multiple transactions to perform. I have seen some concurrency primitives in the oslo libraries, but they are currently not use in this API.

B/c there were so many commits I did a rebase merge to preserve those.


komga: 1.8.3 -> 1.9.2

Automatic update generated by nixpkgs-update tools. This update was made based on information from https://repology.org/project/komga/versions.
meta.description for komga is: Free and open source comics/mangas server
meta.homepage for komga is: https://komga.org/
Updates performed

Version update

To inspect upstream changes

Release on GitHub

Compare changes on GitHub

Impact

Checks done (click to expand)

built on NixOS
The tests defined in passthru.tests, if any, passed
found 1.8.4 with grep in /nix/store/rqj85mfnw7xd8rwr2iarh3s8lk7d59d0-komga-1.8.4
found 1.8.4 in filename of file in /nix/store/rqj85mfnw7xd8rwr2iarh3s8lk7d59d0-komga-1.8.4

Rebuild report (if merged into master) (click to expand)

1 total rebuild path(s)

1 package rebuild(s)

First fifty rebuilds by attrpath
komga

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/rqj85mfnw7xd8rwr2iarh3s8lk7d59d0-komga-1.8.4 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A komga https://github.com/r-ryantm/nixpkgs/archive/4b3df17f7417b431978a9dc15c0016fde2045428.tar.gz

Or:
nix build github:r-ryantm/nixpkgs/4b3df17f7417b431978a9dc15c0016fde2045428#komga

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/rqj85mfnw7xd8rwr2iarh3s8lk7d59d0-komga-1.8.4
ls -la /nix/store/rqj85mfnw7xd8rwr2iarh3s8lk7d59d0-komga-1.8.4/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review run on x86_64-linux 1

1 package built:

komga

Maintainer pings
cc @GovanifY for testing.

Automatic update generated by nixpkgs-update tools. This update was made based on information from https://repology.org/project/komga/versions.
meta.description for komga is: Free and open source comics/mangas server
meta.homepage for komga is: https://komga.org/
Updates performed

Version update

To inspect upstream changes

Release on GitHub

Compare changes on GitHub

Impact
Checks done

built on NixOS
The tests defined in passthru.tests, if any, passed
found 1.9.2 with grep in /nix/store/sfdfnlbggbxi73k7lpwcdn9a1nakasw0-komga-1.9.2
found 1.9.2 in filename of file in /nix/store/sfdfnlbggbxi73k7lpwcdn9a1nakasw0-komga-1.9.2

Rebuild report (if merged into master) (click to expand)

1 total rebuild path(s)

1 package rebuild(s)

First fifty rebuilds by attrpath
komga

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/sfdfnlbggbxi73k7lpwcdn9a1nakasw0-komga-1.9.2 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A komga https://github.com/r-ryantm/nixpkgs/archive/3d1386ef5b6d592ca29e542a3d4f26f8f0ff7b3a.tar.gz

Or:
nix build github:r-ryantm/nixpkgs/3d1386ef5b6d592ca29e542a3d4f26f8f0ff7b3a#komga

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/sfdfnlbggbxi73k7lpwcdn9a1nakasw0-komga-1.9.2
ls -la /nix/store/sfdfnlbggbxi73k7lpwcdn9a1nakasw0-komga-1.9.2/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review run on x86_64-linux 1

1 package built:

komga

Maintainer pings
cc @GovanifY for testing.


[$500] Adding an asterisk * after each backtick ` hides the text inside the backticks - reported by @adeel0202

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Action Performed:

Open any chat
In the chat input, enter some text inside the backticks to quote it
After each backtick, append an asterisk like this: *test*
Send the message

Expected Result:
The text doesn't hide, appears as typed
Actual Result:
The text hides, no text appears
Workaround:
Can the user still use Expensify without this being fixed? Have you informed them of the workaround?
Platform:

Where is this issue occurring?

Web
iOS
Android
Desktop App
Mobile Web

Version Number: 1.1.79-0
Reproducible in staging?: Y
Reproducible in production?: Y
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Notes/Photos/Videos: Any additional supporting documentation
https://user-images.githubusercontent.com/43995119/178181820-ec93655e-4258-44b5-a9d7-3a1ecfd496e0.mov
Expensify/Expensify Issue URL:
Issue reported by: @adeel0202
Slack conversation: https://expensify.slack.com/archives/C01GTK53T8Q/p1656492429217749
View all open jobs on GitHub

This confused me at first until I watched the video, updated the issue body to be more clear. This seems sort of edge case (you would probably only run into it in if you were making a typo) but feels very buggy so opting to raise for a fix- raising to eng but feel free to close if you disagree that this should be fixed.

Please hold this until https://expensify.slack.com/archives/C02NK2DQWUX/p1657544731979729

Looks like we're proposing to replace ExpensiMark. No updates on that conversation just yet.

We have discussed internally and reached the following conclusion: The handful of existing bugs in our markdown parser are solvable (we already have some proposals). Moving to a 3rd party library would come with its own set of new problems that we'd have to spend time solving. As such, Expensify engineers have decided to have contributors keep solving the Expensimark parsing bugs. Should there be problems other than parsing, these can be discussed separately.

internal
external

Upped the price, still waiting for proposals!

Demoting to monthly. It still has value but it is quite the edge case and won't currently affect people under normal scenarios.

Will not increase the price on this

Proposal
This happens because quote is overlapped with bold text.
Let me take example with this one:
`*test`*

According to regex replacement rules in ExpensiMark, inlineCodeBlock is more priority than bold
So inlineCodeBlock is applied first
*test*

After that, bold is applied:
<bold>test</bold>

this is issue. we should avoid this conversion and keep
*test*

which is rendered as *test*
Solution
To do this, we need to update regex to exclude the case of code block start () before bold (*) text.
We're already excluding the case of code block end () after bold text. So we can do similar way.
https://github.com/Expensify/expensify-common/blob/e0ec0b9abca4d7b417ba0b016f8725856cfeeece/lib/ExpensiMark.js#L138-L145
updated regex:
                name: 'bold',
                regex: /(?<!(
||)[^>]*)\B\*((?!\s).*?\S)\*\B(?![^<]*(<\/pre>|<\/code>|<\/a>))/g,
                replacement: '$2',

So if  or  or  is before bold text, this isn't considered as bold and will not apply regex.
Final result: *test*

Looks good to me too. Feel free to create the PR @aimane-chnaif.

@rushatgabhane @aimane-chnaif @adeel0202 will you apply to the job here? I had to repost it

Reposted here!

@adelekennedy still not able to apply.

likewise

Issue not reproducible during KI retests. (First week)

@adeel0202 bump :) https://github.com/Expensify/App/issues/9822#issuecomment-1253733240

@rushatgabhane you probably wanted to bump @adelekennedy 😄

Hmm this seems like it could be an Upwork issue - the job is open and public. I just edited and refreshed here

@adelekennedy, there is already a contract going on for this job on my Upwork, can you please pay me for that one instead of hiring for another one? I would really appreciate that. Same goes for this issue.

Hmm - it's a public job from my side:

I just refreshed again if that works here

Hired you both!

@adelekennedy please check my comment above

Issue not reproducible during KI retests. (Second week)

paid!


Add service status as command option to admin command

Adds a admin command serviceStatus to print service counts and hosts, with resource groups when appropriate to stdout.
To run the command:
 > accumulo admin serviceStatus [--noHosts ] [--json]
The noHost option output provides a summary count
The --json option provides unformatted json output (the --noHost option is ignored)
Sample output:

Summary (service counts only)
> accumulo admin serviceStatus --noHosts
Report time: 2024-05-16T20:05:45.493Z
ZooKeeper read errors: 0
Managers: count: 1
Monitors: count: 1
Garbage Collectors: count: 1
Tablet Servers: count: 2
Scan Servers: count: 4
Coordinators: count: 1
Compactors: count: 4

Full status
> accumulo admin serviceStatus

Report time: 2024-05-16T20:04:09.556Z
ZooKeeper read errors: 0
Managers: count: 1
  localhost:9999
Monitors: count: 1
  localhost:9995
Garbage Collectors: count: 1
  localhost:9998
Tablet Servers: count: 2
  localhost:10000
  localhost:9997
Scan Servers: count: 4
  resource groups:
    default
    sg1
  hosts (by group):
    default: localhost:10003
    default: localhost:9996
    sg1: localhost:10004
    sg1: localhost:10005
Coordinators: count: 1
  localhost:9132
Compactors: count: 4
  resource groups:
    q1
    q2
  hosts (by group):
    q1: localhost:9133
    q1: localhost:9134
    q2: localhost:9135
    q2: localhost:9136

Full status formatted as json
> accumulo admin serviceStatus --json | jq   (normally the output is unformatted)

{
  "reportTime": "2024-05-16T20:01:39.593Z",
  "zkReadErrors": 0,
  "noHosts": false,
  "summaryMap": {
    "COMPACTOR": {
      "reportKey": "COMPACTOR",
      "resourceGroups": [
        "q1",
        "q2"
      ],
      "serviceNames": [
        "q1: localhost:9133",
        "q1: localhost:9134",
        "q2: localhost:9135",
        "q2: localhost:9136"
      ],
      "serviceCount": 4,
      "errorCount": 0
    },
    "COORDINATOR": {
      "reportKey": "COORDINATOR",
      "resourceGroups": [],
      "serviceNames": [
        "localhost:9132"
      ],
      "serviceCount": 1,
      "errorCount": 0
    },
    "GC": {
      "reportKey": "GC",
      "resourceGroups": [],
      "serviceNames": [
        "localhost:9998"
      ],
      "serviceCount": 1,
      "errorCount": 0
    },
    "MANAGER": {
      "reportKey": "MANAGER",
      "resourceGroups": [],
      "serviceNames": [
        "localhost:9999"
      ],
      "serviceCount": 1,
      "errorCount": 0
    },
    "MONITOR": {
      "reportKey": "MONITOR",
      "resourceGroups": [],
      "serviceNames": [
        "localhost:9995"
      ],
      "serviceCount": 1,
      "errorCount": 0
    },
    "S_SERVER": {
      "reportKey": "S_SERVER",
      "resourceGroups": [
        "default",
        "sg1"
      ],
      "serviceNames": [
        "default: localhost:10003",
        "default: localhost:9996",
        "sg1: localhost:10004",
        "sg1: localhost:10005"
      ],
      "serviceCount": 4,
      "errorCount": 0
    },
    "T_SERVER": {
      "reportKey": "T_SERVER",
      "resourceGroups": [],
      "serviceNames": [
        "localhost:10000",
        "localhost:9997"
      ],
      "serviceCount": 2,
      "errorCount": 0
    }
  }
}

Fixes #4495

The output changes in f5f92218bd organize services by resource group.  This slightly modifies the command and the json output.

text output
> accumulo admin serviceStatus

Report time: 2024-05-21T23:06:21.084Z
ZooKeeper read errors: 0
Managers: count: 1
  localhost:9999
Monitors: count: 1
  localhost:9995
Garbage Collectors: count: 1
  localhost:9998
Tablet Servers: count: 2
  localhost:10000
  localhost:9997
Scan Servers: count: 4
  resource groups:
    default
    sg1
  hosts (by group):
    default (2):
      localhost:10003
      localhost:9996
    sg1 (2):
      localhost:10004
      localhost:10005
Coordinators: count: 1
  localhost:9132
Compactors: count: 4
  resource groups:
    q1
    q2
  hosts (by group):
    q1 (2):
      localhost:9133
      localhost:9134
    q2 (2):
      localhost:9135
      localhost:9136

json output (formatted with jq)
> accumulo admin serviceStatus --json | jq

{
  "reportTime": "2024-05-21T23:06:31.596Z",
  "zkReadErrors": 0,
  "noHosts": false,
  "summaries": {
    "COMPACTOR": {
      "serviceType": "COMPACTOR",
      "resourceGroups": [
        "q1",
        "q2"
      ],
      "serviceByGroups": {
        "q1": [
          "localhost:9133",
          "localhost:9134"
        ],
        "q2": [
          "localhost:9135",
          "localhost:9136"
        ]
      },
      "serviceCount": 4,
      "errorCount": 0
    },
    "COORDINATOR": {
      "serviceType": "COORDINATOR",
      "resourceGroups": [],
      "serviceByGroups": {
        "NO_GROUP": [
          "localhost:9132"
        ]
      },
      "serviceCount": 1,
      "errorCount": 0
    },
    "GC": {
      "serviceType": "GC",
      "resourceGroups": [],
      "serviceByGroups": {
        "NO_GROUP": [
          "localhost:9998"
        ]
      },
      "serviceCount": 1,
      "errorCount": 0
    },
    "MANAGER": {
      "serviceType": "MANAGER",
      "resourceGroups": [],
      "serviceByGroups": {
        "NO_GROUP": [
          "localhost:9999"
        ]
      },
      "serviceCount": 1,
      "errorCount": 0
    },
    "MONITOR": {
      "serviceType": "MONITOR",
      "resourceGroups": [],
      "serviceByGroups": {
        "NO_GROUP": [
          "localhost:9995"
        ]
      },
      "serviceCount": 1,
      "errorCount": 0
    },
    "S_SERVER": {
      "serviceType": "S_SERVER",
      "resourceGroups": [
        "default",
        "sg1"
      ],
      "serviceByGroups": {
        "default": [
          "localhost:10003",
          "localhost:9996"
        ],
        "sg1": [
          "localhost:10004",
          "localhost:10005"
        ]
      },
      "serviceCount": 4,
      "errorCount": 0
    },
    "T_SERVER": {
      "serviceType": "T_SERVER",
      "resourceGroups": [],
      "serviceByGroups": {
        "NO_GROUP": [
          "localhost:10000",
          "localhost:9997"
        ]
      },
      "serviceCount": 2,
      "errorCount": 0
    }
  }
}


Look into using "poi" instead of vue starter kit.

Decided to stay with the webpack starter kit, updated to the latest version (unit and e2e tests now working again).


Cleanup: Removed the commented out test which not really needed

Removed the commented out test which not really needed.

Linux test PASSed.

Windows test FAILed.

Windows test FAILed.

Linux test PASSed.

verify-windows

Windows test FAILed.

Windows test PASSed.

Linux test PASSed.


Parallel solves

These days conda attempts to solve reduced problems at a various stages before falling back to a full solve. The idea being that if a quick solve works then you're much better off.
When it doesn't though it can be several multiples worse than just doing the full solve straight away:
https://github.com/conda/conda/issues/9309
Does mamba also have this functionality? I think I remember seeing somewhere that it doesn't because the full solve isn't the bottleneck.
If however it does use multiple solves, a very low hanging fruit would be to run them in parallel.

:100:

we're currently always running on the full index and it's not really the bottleneck at least for small-ish environments.
I have explored using the reduced repodata. I think the main benefit would be in smaller download sizes for the repodata vs. downloading the full repodata everytime.
I think parallel solves would be very interesting for situations where conda-build is involved (there one usually has many solves over the same repodata).

I'll close then as answered!

Let's keep this open as I have been thinking a little further on how & what to parallelize in mamba.
We basically have three phases:
Before solve
We can in parallel download repodata -> unpack repodata (it comes as tar.bz2) -> then parse repodata, and clean trash (compare #103)
So we have N repodata tasks with 3 subtasks (and might need a mutex during parsing), and we have one clean trash.
Then we have the solver phase
And then we can parallely download -> extract packages -> link packages
However, for the linking the order needs to be correct otherwise post link steps might not work.
I think this would map well on a task based parallelism framework such as cpp-taskflow:
https://github.com/cpp-taskflow/cpp-taskflow
But I am also afraid that it might be "overkill".
Another good option might be to use a thread pool. There is a very simple implementation here: https://github.com/progschj/ThreadPool/blob/master/ThreadPool.h
which we could use & adapt. If we have a queue of tasks that get added to the threadpool queue that might be as good as using the more complicated task pool :)

For the thread pool, we have a quite well-tested implementation in https://github.com/apache/arrow/blob/master/cpp/src/arrow/util/thread_pool.h Might be useful if you come across cross-platform issues.


Bump secp256k1 to 0.29

It would be really great if we could have a new musig2 release with 0.0.12 that supports rust-bitcoin 0.32 that uses secp256k1 0.29.
All test passes locally.
I took the liberty of also adding some clippy lint fixes in a separate commit.
Thank you for the awesome work!

Also, could you please replace cargo check with cargo clippy in the make check* recipes? If we're going to enforce clippy's linting on this repo, we should also have an obvious way for devs to run clippy themselves against the various feature flag sets.

Done in 0831843b58d1c622aaeee0ac8f42e17c7cb8ca6f

Seeing #6, I already made the proper fix in 0c5140f so that cargo doc --all-features do not emit warnings anymore.

Included in<EMAIL_ADDRESS>

Thank you very much for your help :smile:


Split up lib/src/meta.dart into different files

The implementation file for the meta functions library gets really long and we decided to split it up into a file for each function.
Like this:
lib/src/meta/geom_each.dart
lib/src/meta/coord_each.dart
But before implementing this, I would suggest waiting for the merging of the meta functions that are already in development (see status: #12), so it doen't get messy!

We should do that, after #70 and #69 are merged @armantorkzaban


[feature] option to disable headline tool-tips and display full headline

in the style sheet i use ( #65 ), i changed the CSS to display the full headline - personally i think the headline is most important and so i see no reason to trim it, however after making this change, the headline tool-tips are unnecessary - if these can be hidden via CSS, please let me know (i'd need the selector), else please consider adding an option to disable them

just pushed update implementing this to AMO

thank @zakius - i'm happy to see you're still working on this code
far as i'm concerned, you've built the best RSS reader for Firefox and i've likely tested every one :)

thanks for your kind words, but don't forget I'm building on solid foundation created by martinkadlec0
without his work I probably would never leave NewsFox behind :D


[~TELEGRAM!GHANA] WATCH Baltasar Ebang Engonga Video Original Video Link Baltasar Ebang Engonga Video Viral On Social Media X Trending Now TFLiteConverter

10 sec ago Balthazar Baltasar Ebang Engonga ʟᴇᴀᴋᴇᴅ ᴠɪᴅᴇᴏ Viral On Social Media.
Balthazar Baltasar Ebang Engonga latest video has taken the internet by storm, sparking lively discussions across various social media platforms. The rising digital influencer, known for her captivating content—particularly her recent Spiderman-themed video—has experienced a tremendous surge in popularity, with fans eagerly awaiting the full version. Audiences are flocking to Instagram, X (formerly Twitter), and Discord to join the conversation and engage with her latest creation.
As the excitement continues to build, fans are actively sharing their thoughts online, underscoring the pivotal role social media plays in propelling creators like Balthazar Baltasar Ebang Engonga into the limelight. With her distinctive style and creative approach, Nila has made a significant impact on the digital scene, leaving her audience eager to see what she will do next.


GSD Request

--- GSD JSON ---
{
  "vendor_name": "Linux",
  "product_name": "Kernel",
  "product_version": "versions from  to before v5.15.12",
  "vulnerability_type": "unspecified",
  "affected_component": "unspecified",
  "attack_vector": "unspecified",
  "impact": "unspecified",
  "credit": "",
  "references": [
    "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=a8a9d753edd7f71e6a2edaa580d8182530b68791"
  ],
  "extended_references": [
    {
      "type": "commit",
      "value": "a8a9d753edd7f71e6a2edaa580d8182530b68791",
      "note": "fixed"
    }
  ],
  "reporter": "joshbressers",
  "reporter_id": 1692786,
  "notes": "",
  "description": "f2fs: fix to do sanity check on last xattr entry in __f2fs_setxattr()\n\nThis is an automated ID intended to aid in discovery of potential security vulnerabilities. The actual impact and attack plausibility have not yet been proven.\nThis ID is fixed in Linux Kernel version v5.15.12 by commit a8a9d753edd7f71e6a2edaa580d8182530b68791. For more details please see the references link."
}
--- GSD JSON ---

This issue has been assigned GSD-2021-1002842


offline storage features

absent/present issue found on this pr ..... when i am login to one school and going to class sec and subject if i mark any student absent on one subject that student is showing absent on other subject as well .

issue cache is not working for class/sec and subject .... getting alert message in offline mode

Hi @dileep-gadiraju ... i have tested above pr it is working fine


Improve code formatting utilization

Currently code formatting is done as part of the posttest script which leaves open scenarios for it to not be applied. The approach should be evaluated and adjusted so formatting is applied more consistently.

Is this still an Issue or wip?

It is partially resolved. I'll close the issue since the left over part is a fairly minor concern.


Simplify the grammar for fork-join

Current grammar for fork-join looks like below:
// below typeName is only 'message[]'
joinClause
    :   JOIN (LEFT_PARENTHESIS joinConditions RIGHT_PARENTHESIS)? LEFT_PARENTHESIS typeName Identifier RIGHT_PARENTHESIS LEFT_BRACE statement* RIGHT_BRACE
    ;

joinConditions
    : SOME integerLiteral (Identifier (COMMA Identifier)*)?     # anyJoinCondition
    | ALL (Identifier (COMMA Identifier)*)?                     # allJoinCondition
    ;

// below typeName is only 'message[]'
timeoutClause
    :   TIMEOUT LEFT_PARENTHESIS expression RIGHT_PARENTHESIS LEFT_PARENTHESIS typeName Identifier RIGHT_PARENTHESIS  LEFT_BRACE statement* RIGHT_BRACE

Here in joinClause and timeoutClause there are some common segments which can be brought to a reusable production.
Also, LEFT_BRACE statement* RIGHT_BRACE can be replaced by blockStatement

Closing the issue since the join and timeout has been removed from the grammar.


Feature/dave rollups stephen

@GCdePaula , I modified the blockchain-reader so it can retrieve both input and epoch events. I don't particularly like the way I did it, do you have any suggestions on how it can be further improved?
Also, does the start method of machine-runner looks like something you had in mind?

@GCdePaula , should we change the epochs table to include a nullable claim/commitment column?
CREATE TABLE epochs (
    epoch_number INTEGER NOT NULL PRIMARY KEY,
    last_input_index INTEGER NOT NULL,
    claim BLOB
);

So, the machine-runner will calculate the commitment when an epoch is sealed and update it to the database.

I think the commitment should be a separate table. This way, all our rows are immutable, and the tables "append only" (except the last processed blocks I guess).

I think the commitment should be a separate table. This way, all our rows are immutable, and the tables "append only" (except the last processed blocks I guess).

Something like this?
CREATE TABLE commitments (
    epoch_number INTEGER NOT NULL PRIMARY KEY,
    claim NOT NULL BLOB
);

BTW, should we call it commitment or claim?

@stephenctw Let's call it computation_hashes and computation_hash!


Schema migration

Migration script to transfer pb or pbtxt files from the schema version 0.1.1 to 0.2.3
Manual inspection of several pbtxt files suggest this is working, but I would greatly appreciate another pair of eyes to ensure that all of the data is being appropriately copied/transferred over.
Notes:

The standard CopyFrom and MergeFrom functions do not work because the message types are distinct Python classes, so all submessages have to be roundtripped through a text serialization akin to the pbtxt format.
Optional fields (bools, floats) must be checked for presence prior to assignment.
Enums that may have their indices changed cannot be copied over by old.type = new.type. Rather, we must convert the old enum index value to its string representation and use that to determine the new enum index value.
Any message where a submessage/field has changed cannot be migrated wholesale; instead, all fields have to be copied over one-by-one with any appropriate changes.
The code around converting repeated analysis fields from the old schema to product measurements in the new one is fairly repetitive and clunky, but I did not think it was worth writing a helper function just for the internal/authentic standard checks.

Attached are all of the old and new pbtxt files from ord-data.
data_new.zip
data_old.zip

Arg, now I'm the bottleneck :)


HDDS-7285. Fix concurrent issue in DeleteBlocksCommandHandler

What changes were proposed in this pull request?
After HDDS-7283, the mark for the delete process will be handled concurrently.
The current implementation has a concurrent issue which will lead to the following exception.
java.util.concurrent.ExecutionException: java.lang.ArrayIndexOutOfBoundsException: 4
        at java.util.concurrent.FutureTask.report(FutureTask.java:122)
        at java.util.concurrent.FutureTask.get(FutureTask.java:192)
        at org.apache.hadoop.ozone.container.common.statemachine.commandhandler.DeleteBlocksCommandHandler.lambda$processCmd$0(DeleteBlocksCommandHandler.java:301)
        at java.util.ArrayList.forEach(ArrayList.java:1257)
        at org.apache.hadoop.ozone.container.common.statemachine.commandhandler.DeleteBlocksCommandHandler.processCmd(DeleteBlocksCommandHandler.java:299)
        at org.apache.hadoop.ozone.container.common.statemachine.commandhandler.DeleteBlocksCommandHandler.access$100(DeleteBlocksCommandHandler.java:79)
        at org.apache.hadoop.ozone.container.common.statemachine.commandhandler.DeleteBlocksCommandHandler$DeleteCmdWorker.run(DeleteBlocksCommandHandler.java:183)
        at java.lang.Thread.run(Thread.java:748)
Caused by: java.lang.ArrayIndexOutOfBoundsException: 4
        at java.util.ArrayList.add(ArrayList.java:463)
        at org.apache.hadoop.hdds.protocol.proto.StorageContainerDatanodeProtocolProtos$ContainerBlocksDeletionACKProto$Builder.addResults(StorageContainerDatanodeProtocolProtos.java:33469)
        at org.apache.hadoop.ozone.container.common.statemachine.commandhandler.DeleteBlocksCommandHandler$ProcessTransactionTask.run(DeleteBlocksCommandHandler.java:263)
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
        at java.util.concurrent.FutureTask.run(FutureTask.java:266)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
        ... 1 more

This ticket is to fix this issue.
What is the link to the Apache JIRA
https://issues.apache.org/jira/browse/HDDS-7285
How was this patch tested?
Test on prod cluster with no more above exception.

@dineshchitlangia Thank you for the review.

Thanks @symious for the fix, @dineshchitlangia for the review.


JSON is not Sendable. Does it plan to migrate to Swift 6? Is this project still in maintenance?

What did you do?
I set the Strict Concurrency Checking in my target to Complete.
What did you expect to happen?
No warning when I pass a JSON from an non-main actor to a UIViewController.
What actually happened instead?
Xcode generates an error:
Non-sendable type 'JSON' returned by implicitly asynchronous call to nonisolated function cannot cross actor boundary; this is an error in the Swift 6 language mode
Environment

SwiftyJSON: 5.0.2

Xcode Version: 16.0 beta 2

Swift Version: 5 but treating errors in Swift 6 as warnings

Cocoapods: 1.15.2

I am also wondering the same things, do you plan to conform JSON to Sendable?

Hi @wongzigii
Do you plan to conform to Sendable?
Thanks


storage: support variable vnode count in compation

Compactor is aware of vnode since #13075, where table_vnode_partition controls how a table's data is organized by SstableBuilder during compaction. As different tables have different vnode counts since #18444, we need more context in SstableBuilder to decide where to cut off the tables to be build.
Specifically, we need to address the TODO here:
https://github.com/risingwavelabs/risingwave/blob/e520bc66cca42e4d028caeb1af7ded8d95819770/src/storage/src/hummock/sstable/multi_builder.rs#L96-L97

Can we close this issue as completed now?

Can we close this issue as completed now?

yes,I think we have completed the ability to support compaction of different table vnodes. I'll turn this PR back on when I run into other problems.


Update @discordjs/voice to fix keepAlive timeout

See PR https://github.com/SushiBtw/discord-music-player/pull/322 and Issue https://github.com/SushiBtw/discord-music-player/issues/323
We no longer need to implement a manual quick fix. Discord.js released a new version that addresses the keepAlive 60 second timeout issue. This PR updates @discordjs/voice to that version.
@SushiBtw - this is really important, because without an update, all connections will continue to time out after 60 seconds.

May I also add that while we wait for an official release, we can manually override the @discordjs/voice package version for discord-music-player in your own package.json:
"overrides": {
      "discord-music-player": {
        "@discordjs/voice": "^0.16.0"
      }
    }

hope this helps!

Why is this not being merged?

Looks good to me. This needs to be merged ASAP

EclipseGame18

Hello this did not work on me.


Add ServiceFabricDeploy and ServiceFabricUpdateAppVersions tasks

Adding two tasks to support Azure Service Fabric applications:

ServiceFabricUpdateAppVersions: Utility task capable of automatically updating the versions in the manifest files of a Service Fabric application.
ServiceFabricDeploy: Deploy task which deploys a Service Fabric application package to a cluster using AAD for authentication.

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

In order for us to evaluate and accept your PR, we ask that you sign a contribution license agreement. It's all electronic and will take just minutes. I promise there's no faxing. https://cla.microsoft.com.

TTYL, MSBOT;

@mthalman-msft, Thanks for signing the contribution license agreement so quickly! Actual humans will now validate the agreement and then evaluate the PR.
Thanks, MSBOT;

@ericsciple: Updated with another commit that addresses review comments.  This incorporates the Service Fabric SDK scripts that this task was previously dependent upon being installed on the build agent.  So now these scripts are embedded as part of the task implementation, making it more self-contained.

@ericsciple: Ok, another commit to review.  I also realized that the task should not have an azureps demand so I've removed that; it just needs plain old PowerShell.

@mthalman-msft Cool. Is this one ready to merge? Would you mind squashing so history is useful when investigating issues?


Switch to protobuf 3.x crates

@rst0git PTAL, this should introduce no API change, just internal changes


MP jpegdec: fix width/height functions by opening file/buffer earlier

References #894
Open file/buffer in open function rather than on demand.
Also adds a close function for the user.

Thank you!
I think we should probably copy the pattern from the PNG image parsing, since introducing a requirement on calling close now will no doubt break people's code in unexpected ways.
PNGDEC's bindings open the file, read out the dimensions, then close it until it's ready to be decoded:
https://github.com/pimoroni/pimoroni-pico/blob/bff245324b6375c4d97c84ec7421d1dc4189d1eb/micropython/modules/pngdec/pngdec.cpp#L292-L321

Sorry I totally missed that you'd updated the PR! Will look into what's making the CI unhappy.


No way of seeing errors

When I run js-import-sort, the output ends with:
All done.
Results:
11 errors
5 unmodified
0 skipped
66 ok

Is there any way of seeing these errors? Should I be worried?

Its likely the errors are related to js-import-sort, but it should skip the files if it can't do anything
I've added some debugging tools in the latest release, (along with some fixes to the issues you highlights, Thanks for that!)
You can use --dry --print to print the results of the transforms to the console, and --verbose to get more debugging output.

Thanks again! :)


Rename buf_api_token to buf_token

... or vice versa.:)
Firstly, thanks for this great product and also for all these GH actions!
I'd like to suggest renaming the configuration parameter buf_api_token to buf_token since that's what most (all?) other Buf actions use (lint, breaking, push).

Hey @hariso , we have recently v1 buf's new GitHub action buf-action. This has the input configuration token. Please take a look!

Whoops, embarrassing :D
Thanks @emcfarlane !


(FACT-1405) Properly compare ip route flags

Previously, we were attempting to compare a string::iterator range
with a const char* C-string via an iterator comparison, treating the
C-string as a "range". This does not work, because when treated as a
range the c-string includes the null byte, while the string iterator
pair does not. This means the ranges are unequal even if they contain
the same character data.
This converts the iterator range to a string before comparison, so
that we use std::string::operator== for the comparison.

Oh, joy. I wonder if string_view (C++17) would do the correct thing. Oh well, this is at least pretty memory-efficient.

CLA signed by all contributors.


Fraction with empty box over empty box causes panic

Another case of MathML which can cause MathCAT to panic. It appears to be a fraction with an empty box over an empty box. This example comes from a nimas book,<PHONE_NUMBER>630NIMAS.zip
The MathML is: <m:math altimg="./images/u01/EQp009_001.jpg" alttext=""><m:mfrac><m:mrow><m:menclose notation="box"><m:mrow /></m:menclose></m:mrow><m:mrow><m:menclose notation="box"><m:mrow /></m:menclose></m:mrow></m:mfrac></m:math>

Just to be clear, it isn't a crash, it is a failure ("no matching element") that gets caught. Is that what you see?

Yes you are correct, not actually a panic/crash but just a failure. My bad for not checking the exception message in BrailleBlaster. To allow giving the user an error message and JVM clean up I catch panics and throw an exception in (java. Crash or fail the result is the same that the book cannot be opened in BrailleBlaster.

Both are bad, but a crash can take down the whole application, which is really, really bad. A fix is pending -- it (empty content) was an area of cleanup that I should have caught. I'm trying to improve the speech for empty content (not just with menclose). It will now say something like "the fraction with numerator empty box and denominator empty box".


Fix older versions in dashboard

Workaround for https://github.com/vmware-tanzu/kubeapps/issues/7740
Signed-off-by: Andrei Kvapil<EMAIL_ADDRESS>

Unfortunately no, because we generate static files which then go into image with cozystack.
We can do runtime generation, but from my perspective it's better to have less moving parts as possible :)


Dropcap position in paragraph next to floated element

Hello,
This issue is quite rare, and happens only of paragraph with dropcap is located right next to one or more floated elements.
Particular use-case. Imagine we have an article content blocks, which have some content paraagraphs as well as "inline widgets". Inline widgets are at same level as pargraphs, but floated to the right to look like "sidebar". Design will explain better: http://joxi.ru/VrwYpLphdyOZ2X.
Here is how it's done:

Widgets are floated to the left;
Widgets are "clear:both" so that they don't stack in top of each other;
Widgets are moved out of the paragraph with negative margin-left;
Body have padding on the left equal to negative margin-left of the widgets;

This way we can place any number of widgets in any place of article body, along with paragraphs.
But with this setup, this plugin has a positioning issue with a letter. Because widgets are floated and cleared, letter is moved down below last floated widget. Here is a demo: https://jsfiddle.net/psheiman/xu9aadoc/5/
Any ideas on how to fix this?

You could add a widget-wrapper div around all the widget divs with .widget-wrapper { float: left; }

Thanks for a quick turnaround! While your solution works great, this is quite hard to make it live. In our system, those widgets are inserved as tokens (i.e. [widget-foo-bar]) using WYSIWYG. Then, these tokens are replaced with HTML when article is rendered. So having a wrapper around all of them is quite problematic.
I understand this is not related to the plugin itself and is my own headache, but would appreciate any help/suggestions on how to make it without a div wrapper.

As far as I know, the wrapper is the only way to get multiple floats to stack up the way you want. The polyfill has to use a float to simulate a dropcap, so we're stuck with the float interactions you're running into. A native initial-letter implementation may be able to do better.
I'll log an issue on the inline layout module to consider this case as we add more detail to https://drafts.csswg.org/css-inline/#initial-letter-floats


s2i should not include the .s2iignore in the final image.

The .s2iignore file can be used to indicate files that should not be copied from the source directory into the image when it is being created. In doing this, s2i should remove the .s2iignore file as well after it is done.
Original source directory contained:
8 -rw-r--r--    1 graham  staff   132 25 Oct 14:19 .htaccess
8 -rw-r--r--    1 graham  staff    10 25 Oct 14:26 .s2iignore
8 -rw-r--r--    1 graham  staff   815 25 Oct 13:15 503.html
8 -rw-r--r--@   1 graham  staff   687 25 Oct 14:40 README.md

with the .s2iignore file containing:
README.md

When s2i build was run, relevant lines in the log file were:
I1025 15:15:50.691897   12240 ignore.go:74] .s2iignore lists a file spec of README.md
I1025 15:15:50.691908   12240 ignore.go:106] using globspec /var/folders/0p/4vcv19pj5d72m_bx0h40sw340000gp/T/s2i888197727/upload/src/README.md
I1025 15:15:50.691926   12240 ignore.go:112] Glob result /var/folders/0p/4vcv19pj5d72m_bx0h40sw340000gp/T/s2i888197727/upload/src/README.md
I1025 15:15:50.691940   12240 ignore.go:41] attempting to remove file /var/folders/0p/4vcv19pj5d72m_bx0h40sw340000gp/T/s2i888197727/upload/src/README.md

So the README.md file got removed as required, but then the .s2iignore file is left behind.
I1025 15:15:50.694453   12240 tar.go:308] Adding to tar: /var/folders/0p/4vcv19pj5d72m_bx0h40sw340000gp/T/s2i888197727/upload/src/.htaccess as src/.htaccess
I1025 15:15:50.913890   12240 tar.go:308] Adding to tar: /var/folders/0p/4vcv19pj5d72m_bx0h40sw340000gp/T/s2i888197727/upload/src/.s2iignore as src/.s2iignore
I1025 15:15:50.914038   12240 tar.go:308] Adding to tar: /var/folders/0p/4vcv19pj5d72m_bx0h40sw340000gp/T/s2i888197727/upload/src/503.html as src/503.html

The final directory in the image ended up containing:
4 -rw-rw-r-- 1 default root  132 Oct 25 04:15 .htaccess
4 -rw-rw-r-- 1 default root   10 Oct 25 04:15 .s2iignore
4 -rw-rw-r-- 1 default root  815 Oct 25 04:15 503.html

Was expected that .s2iignore would be automatically removed as there is no point keeping it.
If want to replicate try:
s2i build https://github.com/getwarped/httpd-site-maintenance.git getwarped/s2i-httpd-server mysite --loglevel 9

Look in directory /opt/app-root/htdocs for what was copied in.

@GrahamDumpleton, I'm not sure I agree.  The flip side to this is: the .s2iignore file was checked in to the git repository, so it should therefore be placed in the container.  If you really don't want the .s2iignore file there, you can append the text ".s2iignore"  to the .s2iignore file, or you could use the --exclude option to s2i instead.

The .s2i directory is also part of the git repository but the way s2i` deals with it it doesn't end up in the set of source files the builder is presented with in the /tmp/src/ directory. Thus there is already precedent for not passing through files which relate to the S2I build process.
I can't see any good reason for the .s2iignore file to be preserved as it relates to the S2I process and is not part of the application code. It is likely to cause more problems by keeping it as the mere existence of an unexpected file in the resulting image could upset whatever the S2I builder does. Making the user manually adding .s2iignore to itself is an extra unnecessary step.

I'm still not convinced.  I don't see that an .s2i directory is treated specially today - if it exists in the git repo, it is copied up to the container just like any other directory.  Also, the .s2iignore functionality mirrors the Docker .dockerignore functionality and behaves in the same way today.  There may be value in keeping it that way.

It is not correct that the .s2i directory is not treated in a special way. The .s2i/bin directory is never copied across into the image.
Anyway, forget it. Just realised that the whole way S2I works is a bigger security risk than I thought for certain class of S2I builders. Am going to have to incorporate additional security measures in the S2I builder to get around how s2i itself works.

Maybe we can document this behavior explicitly? Because, it wasn't obvious to me too.

You also then need to document that .s2iignore file cannot be used to exclude the .s2i directory itself as that will stop the .s2i/environment file from working. Not even checked whether it breaks .s2i/bin.
Now the .s2i/bin directory is excluded from the final files that could end up in the src directory for some S2I builders. The .s2i/environment file cannot be excluded if you still want to use it.
This can have consequences if the .s2i/environment file contained sensitive information and the purpose of the S2I builder was to make the files copied in available in some way for download.
Imagine for example an S2I builder for a HTTPD web server which served up all the files copied in. If the .s2i/environment existed then a external user could download it, and if that had sensitive information in it, then a user could get it.
Thus the S2I builder itself needs to ensure they remove the .s2i directory themselves and ensure it is not copied into the directory of files being served up. It would be wise for the S2I builder to also ensure it doesn't copy the .s2iignore file as you can't rely on a user to remember to add .s2iignore to itself.

BTW, when will support for .s2iignore even make it into OpenShift. Doesn't appear to be in Origin 1.3.

You also then need to document that .s2iignore file cannot be used to exclude the .s2i directory itself as that will stop the .s2i/environment file from working. Not even checked whether it breaks .s2i/bin.

I suppose that is because .s2i/environment is not considered part of the build inputs if you told us to .s2iignore it.  Does seem the docs could be clearer on that point.  As you suspect, I'm sure it causes s2i to ignore any run/assemble scripts in your repo as well.

Now the .s2i/bin directory is excluded from the final files that could end up in the src directory for some S2I builders. The .s2i/environment file cannot be excluded if you still want to use it.

I think we're in a tough spot on this.  We say we'll put the contents of your repo into the assembly container.  Special casing "everything except the .s2i folder" starts to feel dubious.  I think if you have sensitive information then .s2i/environment is not for you, or you need a custom assemble script that removes the file from the container before it gets committed.  But again, documentation could be improved.
You can also use the -E flag to pass an environment file to s2i, rather than making it part of your repo, in which case it will not appear as a file inside the application image.  But of course that requires to you maintain the file outside your source repo.

BTW, when will support for .s2iignore even make it into OpenShift. Doesn't appear to be in Origin 1.3.

probably never.  the existence of .s2iignore itself is a symptom of s2i the CLI tool doing more than it should (git clone).  s2i really should have simply taken a local directory and built your app image from it, rather than taking on the responsibility of git cloning (and filtering) the source files.
when it comes to openshift, there are a number of potential inputs (source/git, from images, secrets, etc), and those are valid regardless of build type (docker vs s2i), so if we were going to do any sort of exclude/filtering feature in openshift, we'd allow you define the filters as part of the input content definition (eg the source/git info) rather than as part of an s2i strategy definition.

So in effect I can never use .s2iignore feature and need to implement my own filter file as part of the S2I builder if that sort of functionality is important.

So in effect I can never use .s2iignore feature and need to implement my own filter file as part of the S2I builder if that sort of functionality is important.

if you intend to port the repo back and forth between standalone s2i environments and openshift environments, that's correct.  Again, the real answer here is that s2i shouldn't have taken on this responsibility in the first place, but now that it did the best we can do is deprecate it for a while before removing it.

It perhaps then needs to also be clarified in the documentation that .s2iignore is not used when using S2I as part of OpenShift.

yes, should probably be noted in the openshift documentation about these sort of specific differences from the behavior of the cli tool.


[WIP] porting Medusa

Motivation
As titled, porting FasterDecoding/Medusa
Modification
finished
1、Medusa weights conversion
2、Medusa weights loading
3、Porting FasterDecoding/Medusa Heads code with LMDeploy components and utilities
4、TP support: Distribute the weights equally based on hidden_size
We've used https://github.com/zhyncs/medusa-whl-centos7/releases/tag/2024.02.27, https://huggingface.co/FasterDecoding/medusa-vicuna-13b-v1.3, https://huggingface.co/lmsys/vicuna-13b-v1.3 to verify the correctness of porting code (fp16 and bf16).
under debugging
1、Porting generate_candidates and evaluate_posterior
2、Integrating with LlamaBatch
todo
1、add docs
2、add tests
3、benchmark
Checklist

Pre-commit or other linting tools are used to fix the potential lint issues.
The modification is covered by complete unit tests. If not, please add more unit tests to ensure the correctness.
If the modification has a dependency on downstream projects of a newer version, this PR should be tested with all supported versions of downstream projects.
The documentation has been modified accordingly, like docstring or example tutorials.

refer to https://github.com/InternLM/lmdeploy/pull/1231 just close this


MAF format link broken

The MAF format link (https://wiki.nci.nih.gov/display/TCGA/Mutation+Annotation+Format+(MAF)+Specification) linked from https://genviz.org/module-01-intro/0001/02/01/Review_of_Central_Concepts/ is currently broken. I could not find an appropriate alternative. The top google hits are for GDC doc pages that are also currently broken...

I added the gdc link, i'm pretty sure this is the right "new" link. though it is still broken


After flashing, non of my scripts work (sd-card connection problem?)

Dear community,
I just flashed my malduino elite like descriped in the tutorial:
https://malduino.com/wiki/doku.php?id=setup:elite
my system information:
OS: Linux Mint 18.2 Sonya
Desktop-Envirement: Cinnamon
Hardware: Thinkpad T460
Kernel: 4.10.0-35-generic
But when I put the standard script "DELAY 1000 STRING hello world" into a .txt file on my sd, just nothing happens after plugging in the malduino into my laptop (I even uploaded the same script with the names 0000.txt till 1111.txt just to be sure that the switches are not broken) I also tried to flash the malduino again with windows and mac, nothing seems to work.
Did somebody else had a problem like that? Is it possible, I flashes it wrong? Any ideas to make it work?
It feels like there could be a hardware connection probleme to the sd-card slot.
after flashing the malduino:

Perhaps try increasing the delay to 5000 milliseconds and work your way down from there. Some computers can take longer than others to initialise the device.


test error

I ran into a problem while running the given test cases——test_linux_stacksmash():
tracer.tracer.TracerMisfollowError: program did not behave correctly, expected only one path
Is it a code problem or is it my configuration problem?
Hoping for your reply, thanks.

I meet the same problem, too.   I use the shellphish/mechaphish docker. Do you use the docker, too ?

no I just download the codes in the angr，shellphish as well as mechaphish


Builds fail on old macOS versions that have libtool versions w/o arg file support

We use libtool instead of llvm-ar on macOS because the commands that Bazel generates on macOS hosts don't work with llvm-ar.
I don't know when support for arg files (i.e. libtool @arg-file) was added to macOS's libtool but at the very least macOS 10.12's libtool (cctools-900) does not support this.
Bazel's native rules_cc machinery does not seem to pick up on this so builds fail on such machines at the archiving step.

Just curious. Where is macOS 10.12 being used? Its last security update was 2 years ago.

Oh sorry, I probably should have mentioned; this is just an old machine that I have. I think it's completely valid to decide that this isn't something bazel-toolchain will support.

Looking through the releases here, it looks like 949.0.1 is the oldest listed release with arg file support which I think isn't that old (a couple of years or so). I'm not sure how cctools versions map to macOS releases.

It's alright. And the PR you sent also looks OK.
I think in general, we should not invite structural/organizational complexity into the codebase to support older releases of stuff. This project is pre-release, and its intended target audience would usually stay current with releases. I generally prefer code simplicity over supporting a very minor use case.
I think it is OK to drop support for:

old versions of LLVM, say more than 3 or 4 versions behind the current release.
Linux and macOS versions that are past their end-of-life.
non-LTS releases of bazel.


[WARNING] The POM for org.assertj:assertj-core:jar:3.10.0 is invalid

Summary
During a Maven build I get following warning in the log:
[WARNING] The POM for org.assertj:assertj-core:jar:3.10.0 is invalid, transitive dependencies (if any) will not be available: 1 problem was encountered while building the effective model for org.assertj:assertj-core:3.10.0
According to Maven logging, there is a problem in the parent pom:
[FATAL] Non-parseable POM <..snip..>\org\assertj\assertj-parent-pom\2.1.9\assertj-parent-pom-2.1.9.pom: processing instruction can not have PITarget with reserved xml name (position: END_TAG seen ...</properties>\n\n</project>\n<?xml ... @444:7)  @ <..snip..>\org\assertj\assertj-parent-pom\2.1.9\assertj-parent-pom-2.1.9.pom, line 444, column 7
Same problem in version 3.9.0.

Interesting ... does it prevent using assertj ?

Okay .. this is awkward.
I checked the parent pom in Maven central and it looked fine.
Then I checked our build machine and didn't find the warning.
Looked into my local maven repository as I got the warning from my local build. And for whatever reason the parent pom was somehow duplicated.
After simply deleting it and re-running the build I got the correct parent pom.
Okay this is weird but not a problem from assertj. Sorry for the inconvenience.

no problem!


chore: Migrate to Go's native multierror handling

Fixes # NA
Description
Now that Go supports handling multiple errors directly from version 1.20 onwards, this commit removes the need for an external library and instead uses native methods of multi-error handling.
How was this change tested?

Does this change impact docs?

[ ] Yes, PR includes docs updates
[ ] Yes, issue opened: #
[x] No

Release Note

@microsoft-github-policy-service agree company="Intel"

/test

@Bryce-Soghigian I assume I don't have permission to trigger tests. Would you mind to help with triggering them?

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Details

2 of 2 (100.0%)  changed or added relevant lines in 2 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 97.774%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
36279

Relevant Lines:
37105

💛  - Coveralls

ping @Bryce-Soghigian

Upstream karpenter also uses multierr from uber. Until we see that move over I am thinking it best we stay consistent in the codebase.
Closing for now, but thanks for raising the idea!


[7.x ]Stop using deprecated setMethods.

\PHPUnit\Framework\MockObject\MockBuilder::setMethods is deprecated.
onlyMethods and/or addMethods should be used instead.

Please patch this on 6.x.

Just like https://github.com/laravel/framework/pull/32212, we want 6.x to be able to upgrade to PHPUnit 10 when it comes out so our LTS release can run properly on PHP 8.0 and 8.1 when they are released.

Just like #32212, we want 6.x to be able to upgrade to PHPUnit 10 when it comes out so our LTS release can run properly on PHP 8.0 and 8.1 when they are released.

I was not aware of that.

There are some new warnings:
1) Illuminate\Tests\Auth\AuthPasswordBrokerTest::testIfUserIsNotFoundErrorRedirectIsReturned
Cannot use addMethods() on "Illuminate\Auth\Passwords\PasswordBroker" mock because mocked methods were already configured.

2) Illuminate\Tests\Auth\AuthPasswordBrokerTest::testResetRemovesRecordOnReminderTableAndCallsCallback
Cannot use addMethods() on "Illuminate\Auth\Passwords\PasswordBroker" mock because mocked methods were already configured.

3) Illuminate\Tests\Cache\CacheMemcachedStoreTest::testGetReturnsNullWhenNotFound
Trying to set mock method "get" with onlyMethods, but it does not exist in class "stdClass". Use addMethods() for methods that don't exist in the class.

4) Illuminate\Tests\Cache\CacheMemcachedStoreTest::testMemcacheValueIsReturned
Trying to set mock method "get" with onlyMethods, but it does not exist in class "stdClass". Use addMethods() for methods that don't exist in the class.

5) Illuminate\Tests\Cache\CacheMemcachedStoreTest::testMemcacheGetMultiValuesAreReturnedWithCorrectKeys
Trying to set mock method "getMulti" with onlyMethods, but it does not exist in class "stdClass". Use addMethods() for methods that don't exist in the class.

Looks like phpunit 10 on laravel 6 is not going to happen: https://github.com/sebastianbergmann/phpunit/pull/3687#issuecomment-609359756.

I really doubt we'll be supporting PHPUnit 10 on Laravel 6 tbh.

@lucasmichot reopening this. Not sure why you closed this again?

I really doubt we'll be supporting PHPUnit 10 on Laravel 6 tbh.

It looks that way...


Add seeds for new fields

contacts.has_covid_symptoms, needs.food_priority, and needs.food_service_type

 Add seeds for the new fields we've created


Value of Tax Rate - Reference - Readme

I tried running the example on Python 3.12 and getting the following result for TAX-RATE.
TAX-RATE: -13.52
Even though, the value should have been -134.52 as the value of line is:
line = "          -13452987654"

Can you share a snippet to reproduce the error?
On Tue, 2 Jan 2024, 19:28 Ankur Katiyar, @.***> wrote:

I tried running the example on Python 3.12 and getting the following
result for TAX-RATE.
TAX-RATE: -13.52
Even though, the value should have been -134.52 as the value of line is:
line = " -13452987654"
—
Reply to this email directly, view it on GitHub
https://github.com/zalmane/copybook/issues/23, or unsubscribe
https://github.com/notifications/unsubscribe-auth/AANAS5UXI6R6ZG3BHRS2IADYMQ7SRAVCNFSM6AAAAABBKKNFLWVHI2DSMVQWIX3LMV43ASLTON2WKOZSGA3DENZSHEYDMOI
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

its the same example as README.md
import copybook
text = """
       01  WORK-BOOK.
        10  TAX-RATE        PIC S9(13)V9(2)
                    SIGN LEADING SEPARATE.
        10  AMOUNT        PIC S9(4)V9(2).
"""
# copybook also provides a parse_file method that receives a text filename
root = copybook.parse_string(text)

# flatten returns a list of Fields and FieldGroups instead of traversing the tree
list_of_fields = root.flatten()

# dummy sample input
line = "          -13452987654"

# loop over the fields and parse the relevant position in the line
for field in list_of_fields:

  # FieldGroups are Copybook groups and contain Field objects as children
  if type(field)==copybook.Field:

    # each Field has a start_pos and a get_total_length method
    # to identify the position within the raw line input
    str_field = line[field.start_pos:field.start_pos+field.get_total_length()]

    # Field provides a parse method that returns a str, int, or float based on the PIC
    print(f"{field.name}: {field.parse(str_field)}")