[FEATURE] Create a simple command line tool to deploy a Dashboards cluster onto a Kubernetes cluster

Is your feature request related to a problem?
Currently, there is not a good way to deploy a multi node Dashboards cluster into a Kubernetes cluster. When I want to set up a Dashboard cluster, I have to manually write the configuration and deploy either to a Kubernetes cluster.
What solution would you like?
A command line tool that can take Dashboard versions and the number of replicas to create a Dashboards cluster deployment onto a Kubernetes cluster
What alternatives have you considered?
Deploy containers without Kubernetes. It is possible to deploy Dashboards containers directly onto a group of VMs. However, It takes complex mechanisms to monitor and manage the lifecycle of containers, and to keep a the cluster running at the desired state with desired number of replicas.
Do you have any additional context?

Assume Kubernetes cluster is provisioned and ready to be connected to
Assume Dashboards will connect to a OpenSearch instance somewhere, possibly not on the same Kubernetes cluster. It is totally OK to show Dashboards not ready.

Great idea! would be glad to see it to allow CI/CD and selective set of plugins when launching OpenSearch Dashboards

Great questions. Here are my thoughts.
Q1. From the implementation standpoint, we can separate the infrastructure and the service even in the infra project. The infra is how is the Kubernetes cluster setup. In the initial implementation, we can assume that the Kubernetes cluster is already available. If so, we no longer need to be concerned with the number of nodes we are dealing with. The only thing we need to handle is the number of replicas, which is part of the pod configuration. Regardless the number of nodes, Kubernetes will try to deploy the number of replicas needed. To summarize, in the initial implementation we can focus only on the service layer to define only the number of pods we want to run for a Dashboards stack.
Q2. That is the right breakdown of the process. We first need to generate a configuration that can be version controlled and deployed. From my perspective, both generating deployment configuration and the deployment process should be facilitated in the infrastructure system. There are some questions I would like to discuss. what are the use cases for the generated deployment configurations? On thing I can think of is to version control. And what is the process to promote the deployment configurations into the service? Do we allow user to upload and deploy any configurations? Or only deploy previous generated configurations? If only previous generated configurations, do we need a location in the service to store these configurations?


Key-value lookups in Zed runtime

We should have a way to issue queries to a sub-pool to populate a map literal that can be referenced in the Zed runtime... e.g., we will need syntax to declare the map's name (like a const) and configure the sub-query used to get a key/value.  If the table is small, the entire contents could be read into memory.  Otherwise, LRU replacement should evict entries when the table gets too big.
To make this efficient, the pool-key of the map contents should be the key of the map.
The syntax might look like this...
map table = from srcPool | configKey==$key | cut this:={key:configKey,value:interestingValue}

A reference to
... table[x] ...

would then evaluate 'x' as the $key parameter to the subquery and load that key in the table.  Once loaded, the sub-query need not run again.
The generality here would give full range over how much to load in for a given key reference, e.g., loading the entire pool contents.
Keys that are reference but not found will be set to nil (as the sub-query would return an empty result).
The object that implements the sub-query should also be able to listen for commits to the pool holding the map data and flush the map when changes are made.  Obviously this wouldn't work well for quickly changing data, in which case, join should be used.  This is for slowly changing state where cached key lookups will be more efficient than joins.
In a future issue, we can generalize this mechanism to do key lookups from external systems like reddis or SQL DBs.

I recently opened a new issue #4141 in reaction to an inquiry from the community, not having realized the overlap with this existing issue. I'm closing #4141 as a duplicate, but am pasting the text from it here for completeness since it contained some more recent input from the team on this topic.

A community zync user inquired:

Does Zed provide a way to collect() values into a map instead of an array?

It currently does not, but the Dev team recognizes this would be cool & useful. Two approaches come to mind:

An operator that could turn an table of aggregation results into a map, e.g., using this Zeek example:
count() by _path | map _path,count | ...

An aggregation function, e.g.:
summarize map(foo,bar) by other_val

Where the foo & bar become the key/value pairs, respectively, of the created map.

We expect both approaches are probably something we'd want to support.

A community zync user recently expressed the need for this functionality. In their own words:

Would it be possible to dynamically define a map const by using the map aggregator function. Ex: const mymap = (from mymappool | map(|{key,value}|)). Such that, the const would become available throughout the entire following graph ? We have a workaround simply copy/pasting the entire source map in ZSON into the const definition, but some of the maps we are dealing with are very large and their content can change dynamically.
I should say fairly large, and not very large. In the order of a few hundreds rows, so not so large for Zed but large enough to make the copy/paste inconvenient and error prone.


VM Update September 2022

This time for real?

The VS bug of colmap and graphicsmagick has not been fixed yet.

This time for real?

Hopefully!

The VS bug of colmap and graphicsmagick has not been fixed yet.

Yeah I was just giving them a shot.

REGRESSION: colmap:x64-windows failed with BUILD_FAILED. If expected, add colmap:x64-windows=fail to C:\a\2\s\scripts\azure-pipelines/../ci.baseline.txt.
REGRESSION: colmap:x64-windows-static failed with BUILD_FAILED. If expected, add colmap:x64-windows-static=fail to C:\a\2\s\scripts\azure-pipelines/../ci.baseline.txt.
REGRESSION: colmap:x64-windows-static-md failed with BUILD_FAILED. If expected, add colmap:x64-windows-static-md=fail to C:\a\1\s\scripts\azure-pipelines/../ci.baseline.txt.
REGRESSION: colmap:x86-windows failed with BUILD_FAILED. If expected, add colmap:x86-windows=fail to C:\a\2\s\scripts\azure-pipelines/../ci.baseline.txt.
REGRESSION: graphicsmagick:x64-windows failed with BUILD_FAILED. If expected, add graphicsmagick:x64-windows=fail to C:\a\2\s\scripts\azure-pipelines/../ci.baseline.txt.
REGRESSION: graphicsmagick:x64-windows-static failed with BUILD_FAILED. If expected, add graphicsmagick:x64-windows-static=fail to C:\a\2\s\scripts\azure-pipelines/../ci.baseline.txt.
REGRESSION: graphicsmagick:x64-windows-static-md failed with BUILD_FAILED. If expected, add graphicsmagick:x64-windows-static-md=fail to C:\a\1\s\scripts\azure-pipelines/../ci.baseline.txt.
REGRESSION: graphicsmagick:x86-windows failed with BUILD_FAILED. If expected, add graphicsmagick:x86-windows=fail to C:\a\2\s\scripts\azure-pipelines/../ci.baseline.txt.
REGRESSION: mfl:x64-windows-static failed with BUILD_FAILED. If expected, add mfl:x64-windows-static=fail to C:\a\2\s\scripts\azure-pipelines/../ci.baseline.txt.
REGRESSION: mfl:x64-windows-static-md failed with BUILD_FAILED. If expected, add mfl:x64-windows-static-md=fail to C:\a\1\s\scripts\azure-pipelines/../ci.baseline.txt.
These were all skipped before; I put their skips back.
PASSING, REMOVE FROM FAIL LIST: jemalloc:x64-osx (/Users/vagrant/Data/work/2/s/scripts/azure-pipelines/../ci.baseline.txt).
:)
REGRESSION: duktape:x64-linux failed with BUILD_FAILED. If expected, add duktape:x64-linux=fail to /agent/_work/2/s/scripts/azure-pipelines/../ci.baseline.txt.
Traceback (most recent call last):
File "tools/configure.py", line 29, in
import yaml
ImportError: No module named yaml
I think this needs the venv treatment, investigating.
REGRESSION: shogun:x64-linux failed with BUILD_FAILED. If expected, add shogun:x64-linux=fail to /agent/_work/2/s/scripts/azure-pipelines/../ci.baseline.txt.
FAILED: src/shogun/CMakeFiles/libshogun.dir/classifier/svm/NewtonSVM.cpp.o
/usr/bin/c++ -DH5_BUILT_AS_STATIC_LIB -I/mnt/vcpkg-ci/buildtrees/shogun/src/b686d6e1cc-76ef87b3ad.clean/src -I/mnt/vcpkg-ci/buildtrees/shogun/x64-linux-dbg/src -I/mnt/vcpkg-ci/installed/x64-linux/include/libxml2 -isystem /mnt/vcpkg-ci/installed/x64-linux/include/eigen3 -isystem /mnt/vcpkg-ci/installed/x64-linux/include -Wall -Wno-unused-parameter -Wformat -Wformat-security -Wparentheses -Wshadow -Wno-unknown-pragmas -Wno-deprecated -fPIC -g -fPIC -gsplit-dwarf -std=c++11 -MD -MT src/shogun/CMakeFiles/libshogun.dir/classifier/svm/NewtonSVM.cpp.o -MF src/shogun/CMakeFiles/libshogun.dir/classifier/svm/NewtonSVM.cpp.o.d -o src/shogun/CMakeFiles/libshogun.dir/classifier/svm/NewtonSVM.cpp.o -c /mnt/vcpkg-ci/buildtrees/shogun/src/b686d6e1cc-76ef87b3ad.clean/src/shogun/classifier/svm/NewtonSVM.cpp
In file included from /mnt/vcpkg-ci/buildtrees/shogun/src/b686d6e1cc-76ef87b3ad.clean/src/shogun/classifier/svm/NewtonSVM.cpp:20:
/mnt/vcpkg-ci/buildtrees/shogun/src/b686d6e1cc-76ef87b3ad.clean/src/shogun/mathematics/lapack.h:25:10: fatal error: mkl_cblas.h: No such file or directory
25 | #include <mkl_cblas.h>
|          ^~~~~~~~~~~~~
compilation terminated.
I think this is an optional dependency detection, investigating.

I would like to remind you that libtool-bin could be added to the linux image, cf. #26923.

I would like to remind you that libtool-bin could be added to the linux image, cf. #26923.

Not really a reminder, I didn't see the other one. If I have to mint the image again I will include that, if not I'll get it next month. (Although 'next month' will be closer to 2-3 weeks because we're delayed in landing this one :( )

OK the linux failure in https://dev.azure.com/vcpkg/public/_build/results?buildId=78582&view=logs&j=f79cfdd7-47a8-597f-8f57-dc3e21a8f2ad&t=da63cf11-1f12-503b-6d64-3b2fb713c172 is exactly the same as the current fleet's build https://dev.azure.com/vcpkg/public/_build/results?buildId=78538&view=results , so we're good to go.


Missing header file name in various places of C API documentation

Navigating C API from the link
http://solettaproject.github.io/docs/c-api/
Various pages of the documentation that describe APIs to use don't provide what's the name of the header to use.
http://solettaproject.github.io/docs/c-api/group__HTTP.html
http://solettaproject.github.io/docs/c-api/group__HTTP__CLIENT.html
http://solettaproject.github.io/docs/c-api/group__GPIO.html
Other pages show the header, like
http://solettaproject.github.io/docs/c-api/structsol__gpio__config.html
While in many cases I could "infer" the header ("let's try... sol-gpio.h" :-) ), in some cases this is not direct. For example in
http://solettaproject.github.io/docs/c-api/group__Mainloop.html
there's a SOL_MAIN_DEFAULT() macro, that I need to include not only sol-mainloop.h but also soletta.h.
Would be nice to have the header information available in all pages that describe API functions.

Good catch
Looks like it only show what header must be included for structs, not for functions.
In case of groups, I believe it may hard to doxygen know about it, since a group may be composed by API exposed through different headers.
To fix it would be good to check if doxygen has options to add it automatically. If not, in our case, I believe that for most groups a mention per group is enough. There are a few exceptions, like Mainloop.


Builder scope in the same class is not yet recognized

Larastan Version: 2.6.4
--level used: 5

Description
Call to an undefined method Illuminate\Database\Eloquent\Builder::valid().

I had to add a param tag to scopeInvalid to work around it.
@param  \Illuminate\Database\Eloquent\Builder<self>  $query

Laravel code where the issue was found
    /**
     * Scope the query only to the valid quizzes.
     */
    public function scopeValid(Builder $query, bool $valid = true): Builder
    {
        return $valid
            ? $query->whereNull($query->qualifyColumn('invalidated_at'))
            : $query->whereNotNull($query->qualifyColumn('invalidated_at'));
    }

    /**
     * Scope the query only to the invalid quizzes.
     */
    public function scopeInvalid(Builder $query): Builder
    {
        return $query->valid(false); 👈🏻
    }

Hi,
Yes, adding @param  \Illuminate\Database\Eloquent\Builder<self>  $query is the only way. We cannot make assumptions because it'd be too complicated. Like, what if the method is in a trait, or what if there is some inheritance. Then what would be the model?


Field validation depends on another Field

I have two structs. Need to validate City field and return error when chosen CountryID has the city with the same Name. How can I do this? Is it possible?
type City struct {
    ID uint
    Name string
    CountryID uint
}

type Country struct {
    ID uint
    Name string
    Cities []City
}

I am Facing similar issue

you can use something like this
	type City struct {
		ID uint
		Name string `valid:"city"`
		CountryID uint
	}

	type Country struct {
		ID uint
		Name string
		Cities []City
	}

	govalidator.CustomTypeTagMap.Set("city", govalidator.CustomTypeValidator(func(f interface{}, m interface{}) bool {

                // f - field that need to be validated
                // m - model of current City

                c := City{}
                DB.Where(City{
                        CountryID: m.(City).CountryID,
                        Name: i.(string),
                }).Find(&c)

                if c.ID > 0 {
                        return false
                }

                return true
	}))

@maxvi did you resolve your issue? :smile: Could you refactor and then put your example into README please?

seems like it's already in README https://github.com/asaskevich/govalidator/#adding-a-custom-validator


Referencing assets (fonts, images) in SCSS/CSS files?

Thanks for your work on this project, super interesting.
One issue I've hit is referencing static assets such as fonts or images. I've tried:

relative i.e. ./font-name.woff2 or ../fonts/font-name.woff2
Using the Vite aliases i.e. @/fonts/font-name.woff2

But these always return paths relative to the root of the whole site i.e. site.test/fonts/font-name.woff2 or site.test/resources/fonts/font-name.woff2.
The Vite docs say to use a public directory but this gets wiped out by a build as Sage also expects a public directory for compiled assets, so I can see the Vite out directory is set to public and Sage references public for enqueuing the  compiled CSS/JS files.
Any pointers here?

OK, so after a small break and coming back to this, it appears that setting base: './', within vite.config.ts and referencing using aliases @/fonts/font-name.woff2 works for build but in dev it's missing the port in the URL. The CSS file is trying to reference site.test/fonts/font-name.woff2 rather than site.test:3000/fonts/font-name.woff2.

I've now managed to get this working. The issue is around Vite not supporting the dev server having a different URL, see: https://github.com/vitejs/vite/issues/2196.
I've added base: './', near the top of the config just after publicDir to process the URLs during build and then I've modified the dev server config as follows:
  if (dev) {
    config.server = {
      host: '<IP_ADDRESS>',
      **origin: devServerConfig.HMR_ENTRYPOINT,**
      strictPort: true,
      fs: {
        strict: true,
        allow: ['node_modules', assets.base]
      }
    }

This add the correct URLs during dev.

Sorry for the late response and thank you for the tip. I will check and give that a try as soon as possible


JAMES-3775 Experiment with Rspamd Deliver-To header

chibenwa/tmail-backend-distributed                       0.6.2-debug-6

Rebased to solve the conflict.
I did not made progress on this topic just yet.

I rebased this pr & clean code in other pr https://github.com/apache/james-project/pull/1191
I don't see Deliver-To header work.
I tried to call directly http request to Rspamd (by Postman), But I didn't see difference score when different Deliver-To header.
// I ensure the learning spam has been run

I created a issue on rspamd repository for help: https://github.com/rspamd/rspamd/issues/4269


Add an endpoint to get user logins/authorisation methods

This will allow the frontend to show users what oauth methods and local login methods they can link/unlink

Fixed in https://github.com/OultimoCoder/cloudflare-planetscale-hono-boilerplate/releases/tag/v1.1.0


Don't reference out-of-date playground repository in Guvnor ALA test.

So I noticed a test failure on master was caused by failure to download GWT 2.8.0-rc1. Though the error was probably due to network flakiness, we shouldn't be relying on that GWT version anywhere and I think the source was from this test using an outdated playground repo.
This change points the test to my fork of the appformer-playground which is currently being maintained. I also noticed several other tests pointing to Mauricio's forks of "drools-workshop" that we might need to update in the future.

Jenkins, retest this.

Jenkins, retest this.


converting from_csv fails when to_csv had None values (e.g. onsets_Hz)

Need to have to_csv insert something (NaN or None?) when value of Segment field is None for on/offsets_s/Hz

fixed by bbe96efbb0820d3ed88ce25de979189c843d2954 and b4909544e16f3d54010890a86cd3ae93cd9372e3


LTD-5015 Change 'Item list codes' to 'Control list entry'

Aim
Content change - 'Item list codes' to 'Control list entry' for headers in denials list and denial details pages
LTD-5015

folded into another PR here


⚠ Don't start using this package for new projects

Hi everybody 👋
While I still have to make a final decision, I'll likely abandon this package. So for new projects, don't start using it, as you might be disappointed soon. I've put a lot of time into v1 and v2, but a few things keep me from dedicating more time to this package.
Due to circumstances, v2 never made it into one of our production apps. It was weird, but basically the moment I tagged v2, we didn't need it anymore. It also never made it into other apps. At first, I was determined to keep improving, but that's quite hard if you're not using it yourself, as there's no genuine incentive.
This package was always hard to customize for users, and it has its quirks (perhaps fundamental). Mostly, I find it hard to maintain. I have limited time available for open-source, so when I find time for it, I want to dedicate it to packages I'm really passionate about.
I'm sure some of you would've liked to see it another way. Since the package is fully open-source, you can always fork it and keep using it. Most likely, my open-source Inertia adventure ends here.
Pascal

For me this means that I'll choose the livewire stack from this moment

Of should I try to use spadle?

Hi @pascalbaljet,
I was looking for a solution and your package seemed promising. Thank you for your time, your work, and for being honest.
Best regards :)

Anybody know a good alternative?

This is disheartening. Such a fantastic package! Thanks for everything you've done.

what a loss... I really don't understand why this package didn't interest anyone as it has perfect combination .. anyway thanks for everything. The issue of this was that no one of the top gurus talked about it, anywhere I place a question about this package people come across like 'what is this?' as if it's something coming out of solar system.. the guy was making a miracle by allowing us to finally get rid of J.S. and use blade only in SPA! like wow .. anyway, God bless your nice energy, I really have no words to say rn...

Anybody know a good alternative?

Don't really need an alternative if you know how to program right?
Like Pascal says in the post

Since the package is fully open-source, you can always fork it and keep using it.

Package still works fine, probably needs a couple adjustments here and there. But imo if you're programming something and are using packages like this, you should at least know how it works and how to update it if something might be broken.
I personally just imported everything into my project and made the php side a Trait + ServiceProvider and the Vue side just goes into my components.

Thanks for the great work, Pascal. I decided to make something similar for my own use internally based on your library to make it work with Svelte. It's a lot simpler and less featured than yours but it does the job.
There's a very bright future ahead for Splade and I recommend everyone giving it a try.

Thanks for the kind words, everybody! As expected, I'm archiving this repository to focus on Splade and Eddy.
See you around! 🙌


OnDetectionFinishedEventArg ~ OnDetectedEventArg

OnDetectionFinishedEventArg is duplicated in OnDetectedEventArg class

As of 1.5.0 there are two events that can get triggered:
public event EventHandler<OnDetectionFinishedEventArg> OnDetectionFinished;
public event EventHandler<OnImageCapturedEventArg> OnImageCaptured;


no Context menu on image files with Powertoys resize feature enabled

Explain the bug
Write a clear description of what the bug is.
To reproduce

Go to '....'
Click on '....'
Scroll down to '....'
See the error

Expected behavior
Write a clear description of what you expected.
Logfile
Upload the log file here for us to understand your issue better.

You can access it from Settings->About->Open log location.
or
Copy the debug.log and debug_fulltrust.log from the following directory, and upload the files here.
%localappdata%\Packages\49306atecsolution.FilesUWP_et10x9a9vyk8t\LocalState

Screenshots
Add screenshots to help explain your problem if needed.
System Information

OS Version: [e.g. Windows 10 20H2 19042.804] (Press WIN + PAUSE/BREAK, use the copy button at the bottom)
App version: [e.g. v1.0] (In the app, go to Settings -> About, the version is shown at the top)

Additional comment
Add any other comment about the problem here. Does this problem happen again after restarting the app?
I use Files v1.5.17 and Windows 10 Insider Preview 21370.1 (co_release) with Microsoft PowerToys and have the "change image size" feature enabled.
Every time I right-click an image file (for example .jpg .png .ico .bmp, maybe more), to bring up the context-menu, Files freezes.
I have to manually close it and wait a few seconds before being able to open it again.
This can be really frustrating, when one has many tabs open while organizing or copying files and then the program freezes and all tabs and file transfers are gone.
When I disable the PowerToys feature to change the Image size, the context menu works fine.

Edit:
it's not due to the Powertoys feature, that was just a coincidence.
The right click on images usually doesn't work, only in that case it randomly did.

Is this still an issue in V2 for you?

It works again
Simon Rotter

From: Josh-65 @.>
Sent: Thursday, September 9, 2021 3:56:31 PM
To: files-community/Files @.>
Cc: SiRo24 @.>; Author @.>
Subject: Re: [files-community/Files] no Context menu on image files with Powertoys resize feature enabled (#4802)
Is this still an issue in V2 for you?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://github.com/files-community/Files/issues/4802#issuecomment-916176762, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ATIHMC3IALMHWHQST7XYHN3UBDDJ7ANCNFSM434APCVQ.
Triage notifications on the go with GitHub Mobile for iOShttps://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Androidhttps://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

It works again

@SiRo24 Thanks for letting us know, feel free to come again to ask if this issue happens to you again ;)


Refactor the compilers/runtime environment (avr-gcc, jvm and avrdude) to be installed through a setup script

This issue aims at directing the compilers/runtime environment to be installed after cloning this repo through a terminal command script using the curl command, for example, this script shows the automation of installing and extracting the avr-gcc from microchip website:
curl https://ww1.microchip.com/downloads/aemDocuments/documents/DEV/ProductDocuments/
SoftwareTools/avr8-gnu-toolchain-<IP_ADDRESS>6-linux.any.x86_64.tar.gz  --output 'avr-gcc.tar'

tar -xf avr-gcc.tar

The user has to just run this script to setup the working environment for them.


Write a state dump converter for Zino 1 to Zino 2

Organizations like Sikt and NORDUnet have been running Zino 1 in production for years.  At some point, they will migrate to the new Zino 2.0, and will have the need to migrate existing state data from Zino 1 to Zino 2.
Zino 1 saves its state as pure Tcl code.  This code is quite simply a bunch of assignments to global dictionaries that hold all the state data, and is imported as a Tcl module as Zino starts.  Since it doesn't contain any Tcl logic outside of simple assignments, it should be relatively easy to write a Python parser for this file, that can load the information into Zino 2.0 data structures and then dump these to disk before Zino 2.0 is started.
Since this task was not part of the original project specification, we should leave it to the very end, until we either are sure we have the person-hours to spare, or otherwise get some spending approval from somewhere.

Initiated by #62

Zino 1 saves its state to saved-state.tcl in our production instances.
Zino 2 state models are fully encompassed by the zino.state.ZinoState class, which is a Pydantic model that stores all state that needs to be persisted to disk between Zino runs.


EBS volume rolling snapshot feature?

First of all, thank you so much for releasing custodian.  I had started on a much worse version and then saw this.
One feature I was thinking of adding was scheduling of rolling snapshots, with a max backups attribute of some kind.
I was looking at evannuil/aws-snapshot-tool as a tool to help, but it does strike me that I'd like to manage everything through custodian policies.
I was thinking of starting something myself, but wanted to see if this was already in the works, or you had design suggestions.  It looks like if I add in a class annotated with @actions.register('create-rolling-snapshot-volume') and then had functionality around ec2.create_snapshott that would be the right direction.
Thoughts?

hi @jmahowald, so i think the key factor on rolling is not the creation per se but instituting targeted cleanup policies. ie. backup management with custodian is a semantic notion realized by multiple policies, one to take the snapshot which can be on any schedule, and one to do the cleanup of un-needed snapshots. the key factor is logic on the cleanup, ie. currently custodian is fairly primitive in saying keep n days of backups, when i think more advanced usage would be keep the last n days, n weeks (one for each), n months of backups.
fwiw, here's a standalone snapshot management tool i wrote a few years ago for nasa does this sort of targeted retention/cleanup policy in its snapshot mgmt (the dynamodb usage is just for leader locks on an ha setup) https://github.com/kapilt/aws-tools/blob/master/awsjuju/services/snapshot.py
https://github.com/kapilt/aws-tools/blob/master/examples/snapshot.yaml
also as always when talking about backups via ebs snapshot, as soon as you have multiple devices in a logical device/fs manager (lvm, btrfs, zfs), then snapshotting via api has no consistent restore guarantees without stopping the instance first (which custodian can be configured to do).

finishing the the thought, i think the best answer then would be a filter for ebs snapshots that can do this sort of retain logic (n day, n week, n month), and allows configuration of the retention period.

Thanks for the pointers. I agree with the filtering for the retention period with some tag conventions.
Question about your last paragraph in your first response.  If I only have one instance and process writing to the EBS volume and I'm not using a logical volume manager, can I then have restore guarantees?  If not, I'm wondering how I could detect/verify the problems.  I guess it it was something like zfs that would be pretty straightforward though.

any one volume does an atomic snapshot, multiple processes writing is fine, they do need to be crash resilient (wal or equiv), same as if the power was rebooted on the machine. for multi-volume instances things get more interesting, logical volume systems (and fs that do the same aka btrfs/zfs) will have their block devices snapshotted independently which may result in latent issues for them. we can't really coordinate with them to do fs freeze/thaw equivalent without an on instance agent.


Get automatically versions and compute SHA256  and refacto makefile

It's fix :

The SHA256 dynamicaly computation for the new ISO release
Refacto the Makefile

thanks!


DFU integration

Hi!
I'm currently trying to integrate serial monster into the Maple DFU bootloader (https://github.com/rogerclarkmelbourne/STM32duino-bootloader).
Is it planned into future releases or are there some hidden problems? I think it can be really useful feature.
Thanks!

Hi,
I currently don't have such plans. However, I believe everything should be pretty straightforward and there should be no hidden issues with that.
Right now, serial monster uses STM32F103XB_FLASH.ld, which defines FLASH ORIGIN to 0x08000000. I believe Maple DFU requires this to be changed to 0x8002000 or 0x8005000 depending on the bootloader settings. I think this is the only change that is needed.
If would be great if we can find a way to override FLASH ORIGIN in STM32F103XB_FLASH.ld without modifying the original linker script with a Makefile option or something like that. STM32F103XB_FLASH.ld has somewhat a restrictive license, which forbids distribution of unmodified or modified versions of the file. That's why I don't really want to include it into the source tree.
Alternatively, we can create our own version of the linker script, which does everything we need.

I tried to change the address in FLASH_BASE (i suppose that's it because I haven't found FLASH ORIGIN) from 0x0800000 to 0x08002000 (even tried 0x08005000) and it doesn't work. I think it won't be simple as just changing one value.
When I try to list currently connected DFU devices using dfu-util (after loading user code - in this case serial monster), I get only "Unknown" values.

How exactly did you change FLASH_BASE? I am asking because FLASH_BASE is a C macro defined in stm32f103xb.h and it has nothing to do with the linking phase.
I was talking about Drivers/CMSIS/Device/ST/STM32F1xx/Source/Templates/gcc/linker/STM32F103XB_FLASH.ld, specifically this part:
/* Specify the memory areas */
MEMORY
{
FLASH (rx)      : ORIGIN = 0x08000000, LENGTH = 128K
RAM (xrw)       : ORIGIN = 0x20000000, LENGTH = 20K
}

I think you should change FLASH ORIGIN here and see if that helps.

Yes! That's it!
Now it works PERFECTLY!
My IDE didn't show me the linker subfolder so I thought you meant FLASH_BASE macro and I just directly assigned a value to it.
Thanks!

Sounds great, thank you for confirming it works.

After some testing I've discovered, when you unplug the Bluepill or press reset button, everything goes back to the "Unknown" state as before.

What exactly do you mean by unplugging? Is you bluepill USB-powered or it receives power via an external PSU? In other words, does unplugging also mean power off?
Is everything OK when there are no external PSUs connected to bluepill and the board is plugged in to USB?
As for pressing the reset button, currently serial monster does not force USB re-enumeration on power-on, which probably the reason for this behavior. The board is reset, but the host does not know about it.

I meant USB cable, not an external PSU, so yes - unplugging means power off.
Everything works fine until you try either unplugging or pressing the onboard reset button which makes it fall into the "Unknown" state.

OK, thank you. I think at this point I need to perform some experiments myself in order to figure out what goes wrong. I can probably do this in the next few days.

Another interesting thing I found is that after I restarted my PC, everything started to work again, until I powered off (unplugged the USB/pressed the reset button) the Bluepill again. I think it really leads us to the missing USB re-enumeration on power-on.

Thanks for the information. This may be as well a Maple DFU bug. Or, a combination of Maple DFU + serial monster code may yield a bug. Or, and this is really important, check if your bluepill has 1.5 k resistor between D+ (PA12) and 3.3 V. This is mentioned in serial monster README and also in Maple DFU README. If the resistor is 10k, or 4.7k, there can be issues with USB re-enumeration in Maple DFU please check this:
"On "generic" boards, the USB reset (to force re-enumeration by the host), is triggered by reconfiguring the USB D+ line (PA12) into GPIO mode, and driving PA12 low for a short period, before setting the pin back to its USB operational mode. This USB reset method was written by @Victor_pv. Note: It is not guaranteed to work on all "generic" STM32 boards, and relies on PA12 having a pull-up resistor of around 1.5k - however most "generic" boards seem to have this. Its unclear if this method to reset the USB bus conforms precisely to the USB standard, but it seems to work fine on all PCs, Macs and Linux boxes on which it's been tested - and seems usable for hobby / non commericial / non-critical systems."
Taken from here: https://github.com/rogerclarkmelbourne/STM32duino-bootloader
All the bluepill boards I have didn't have 1.5k resistors initially and I had to replace the resistors.

I've checked all of my Bluepill boards and every one of them has 1.5k resistor.
I will look into the Maple DFU aswell but first I'll try to fix this on serial-monster side by forcing re-enumeration on every power up.
I'm not sure if I'll be able to do it though.

Sounds like a plan. I will also look into that as promised.


HELP

Challenge Escape Sequences in Strings has an issue.
User Agent is: Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.103 Safari/537.36.
Please describe how to reproduce this issue, and include links to screenshots if possible.
My code:

var myStr = 'Here is a backslash: \\\.\n\t\t Here is a new line with two tabs.';  // Change this line

@achalofficial Don't include a space before it, not a bug.

@achalofficial Issue tracker is for reporting bugs only.
Please use the appropriate channels when looking for help.
Happy Coding


document writing a wrapper on auth APIs to store user data in app DB

Explicitly document the use-case of writing a wrapper over the auth APIs if a developer wants to store user data in the application database. This should be part of the manual with a link to this modeling-users-in-the-application-database.html.

@dsandip Does this doc cover this now or were you looking for something different

@rikinsk : For starters, it could reference this guide: https://docs.hasura.io/0.15/manual/guides/social-login-user-data.html or vice versa. I also think a little more detail like a google diagram won't hurt. I will assign this to myself and send a PR


support cmake LIBRARY_OUTPUT_PATH and EXECUTABLE_OUTPUT_PATH for rust cdylib

I found that when set rust to cdylib, the .dll can not generated at the same dir of LIBRARY_OUTPUT_PATH set by cmake.

Could you please give more details on what you have tried, and how it worked out (or rather didn't)?

cpp_rust.zip
consider this demo, the rust lib format is "cdylib", set camke binary output dir is /bin, by EXECUTABLE_OUTPUT_PATH and LIBRARY_OUTPUT_PATH set to /bin, but only cpp executable binary in /bin, the librust.dylib/rust.dll not output in bin

.

To me this looks like a duplicate of #65.


HDDS-9041. Intermittent Delete root failed.

What changes were proposed in this pull request?
Intermittent Delete root failed where it is observed that listStatus for FSO returns deleted files. This is causing flaky for some test cases.
Problem: listStatus called before flush of double buffer can return deleted key / directory present in cache. And also old information from db.
What is the link to the Apache JIRA
https://issues.apache.org/jira/browse/HDDS-9041
How was this patch tested?
This patch is tested by executing existing flaky test cases which is now running fine.

@sumitagrawl  - Pls review.


enable FIPS in kernel args at install time for anaconda-iso builds

when settings FIPS to true in blueprint, kernel args for the install ISO should be appended with fips=1 so that our system boots with the kernel in FIPS mode during installation
an example config.toml:
[customizations]
fips = true

[customizations.installer.kickstart]
contents = """
text --non-interactive
network --bootproto=dhcp --device=eno1 --activate --onboot=on

rootpw --lock --iscrypted locked
user --name admin --password admin --groups wheel

zerombr
clearpart --all --initlabel --disklabel=gpt
autopart --noswap --type=lvm

reboot
"""

after building the image, the resultant manifest doesn't show any indication that fips=1 has been added to the kernel args in the org.osbuild.grub2.iso stage of the efiboot-tree pipeline:
{
  "version": "2",
  "pipelines": [
    ...
    {
      "name": "efiboot-tree",
      "build": "name:build",
      "stages": [
        {
          "type": "org.osbuild.grub2.iso",
          "options": {
            "product": {
              "name": "AlmaLinux",
              "version": "9.4"
            },
            "kernel": {
              "dir": "/images/pxeboot",
              "opts": [
                "inst.stage2=hd:LABEL=Container-Installer-aarch64",
                "inst.ks=hd:LABEL=Container-Installer-aarch64:/osbuild.ks"
              ]
            },
            "isolabel": "Container-Installer-aarch64",
            "architectures": [
              "AA64"
            ],
            "vendor": "almalinux"
          }
        }
      ]
    },
    ...
  ]
  ...
}

viewing the kernel args in the grub boot menu option shows that fips=1 hasn't been appended:

after installation, fips-mode-setup --check yields a "FIPS mode is disabled." response:

Does this feature conflict with the other non iso/anaconda-iso image type which enabled FIPS in base image https://gitlab.com/fedora/bootc/base-images/-/merge_requests/31? Thanks.

Does this feature conflict with the other non iso/anaconda-iso image type which enabled FIPS in base image https://gitlab.com/fedora/bootc/base-images/-/merge_requests/31? Thanks.

No we need to do both, see https://docs.fedoraproject.org/en-US/bootc/security-and-hardening/#_usage_with_anaconda

I see #709 was merged, can we consider this ticket closed?


[ENH] Shapelet transforms vary in class attributes

Describe the feature or idea you want to propose
Overarching idea is to make the shapelet transforms implemented more similarly to one another, but for now they should be made to have  the same class attributes for example shapelet transform has useful class attributes such as (shapelet information gain, shapelet length, start position the shapelet was extracted from, shapelet dimension, index of the instance the shapelet was extracted from in fit, class value of the shapelet. These are all very helpful for shapelet interpretation but aren't always present in the other transforms.
Describe your proposed solution
Add missing class attributes to SAST,RSAST (RDST has already been done I think). Though these attributes may not serve any purpose in the functionality of the algorithms, hence why they probably weren't added to the class, they are useful for comparing the shapelets generated by each transform,
Describe alternatives you've considered, if relevant
No response
Additional context
No response

@aeon-actions-bot assign @IRKnyazev


Expose config types.

This allows for annotating one's config such as:
---@type crates.Config
opts = {
   ...
}

Oh I didn't know that EmmyLua annotations had visibility specifiers.
This definitely seems useful, but the Config type is used internally for the validated and extended config. This change results in a bunch of needs null check warning.
One solution I see would be to expose a UserConfig type, that could probably be generated either from the schema or the Config class definition.

Closed in #105.

Thanks!


Remove Provider mode guard for In transit encryption checkbox

https://issues.redhat.com/browse/RHSTOR-5257

/lgtm


Update M03-Unit 4 Configure an ExpressRoute Gateway.md

Module: 00
Lab/Demo: 00
Fixes # .
Changes proposed in this pull request:

Submitted by viggithub on behalf of MOC Labs Review


Added anime discuss to serverlist.json

Added extra server to Serverlist.

Public servers is currently broken but should be fixed soonish.


Bazel incompatible changes

This issue tracks incompatible bazel changes that cause upstream bazel CI test failures.
Starting today we have upstream bazel CI building and testing envoy so bazel can catch issues sooner. As part of this we want to try and stay ahead of upcoming breaking bazel changes (more discussion here).
Now that this is enabled I want to take a first pass on trying to get us to incompatible change 0, so future changes are easier to keep up with.
Here's the most recent build showing us which specific changes we aren't compatible with https://buildkite.com/bazel/bazelisk-plus-incompatible-flags/builds/110#72eb6717-c478-44de-833d-b7da832ee58e
From a quick test locally most of these incompatibilities are coming from upstream dependencies. I will submit a series of PRs to update these were applicable and link them to this issue.
cc @htuch @laurentlb

I've submitted a PR against protoc-gen-validate with some changes https://github.com/envoyproxy/protoc-gen-validate/pull/200

We're being hit by https://github.com/bazelbuild/bazel/issues/7849 which I'm not sure what the migration plan is for, but it appears to be affecting protobuf directly as well.

Two flags I'd like to flip soon are:

--incompatible_depset_is_not_iterable (broken due to https://github.com/envoyproxy/protoc-gen-validate)
--incompatible_disable_deprecated_attr_params (broken due to grpc, but I think grpc has been fixed)

CC @lizan @moderation @fcfort. Do we have any Bazel ninjas who can give the fixes for this a shot? Also @rodaine for PGV aspects.

I'm currently working on some of these. I'll post an update shortly.
--
Keith Smiley

On May 20, 2019, at 14:07, htuch<EMAIL_ADDRESS>wrote:
CC @lizan @moderation @fcfort. Do we have any Bazel ninjas who can give the fixes for this a shot? Also @rodaine for PGV aspects.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or mute the thread.

Ok so when building on macOS, using this branch of protoc-gen-validate, master from rules_foreign_cc, and ignoring this flag https://github.com/bazelbuild/bazel/issues/7260#issuecomment-494163344
I'm at migration 0. I don't see the issue with --incompatible_disable_deprecated_attr_params, @laurentlb any idea why? If we did have to update grpc, we'd need to wait until their current pre-release was actually released.

Repro:
$ bazel build --nobuild --incompatible_disable_deprecated_attr_params test/...
...
	File "/usr/local/google/home/laurentlb/.cache/bazel/_bazel_laurentlb/71d59151158aafb7db935cf8065f6d0c/external/com_lyft_protoc_gen_validate/bazel/protobuf.bzl", line 155, in rule
		attr.label(cfg = "host", default = Label("@co..."), <2 more arguments>)
'single_file' is no longer supported. use allow_single_file instead. You can use --incompatible_disable_deprecated_attr_params=false to temporarily disable this check.

-> Need to update https://github.com/envoyproxy/protoc-gen-validate/blob/master/bazel/protobuf.bzl (running buildifier --lint=fix might be enough)
Repro:
$ bazel build --nobuild --incompatible_depset_is_not_iterable test/...
...
	File "/usr/local/google/home/laurentlb/.cache/bazel/_bazel_laurentlb/71d59151158aafb7db935cf8065f6d0c/external/com_github_grpc_grpc/bazel/generate_cc.bzl", line 10, in generate_cc_impl
		[f for src in ctx.attr.srcs for f in src.proto.transitive_imports]
type 'depset' is not iterable. Use the `to_list()` method to get a list. Use --incompatible_depset_is_not_iterable=false to temporarily disable this check.

This comes from grpc (I haven't checked if/when it was fixed in grpc).

Looks like @keith has fixes for both issues in https://github.com/envoyproxy/protoc-gen-validate/pull/198, which are blocked on https://github.com/envoyproxy/protoc-gen-validate/pull/200 going in as well.

I've submitted the grpc change upstream https://github.com/grpc/grpc/pull/19097 I didn't see that because I was testing against //source/... not //test/...

Hi all, I'm updating all Bazel incompatible flags related issues - the Bazel team is in increased pressure because 0.27 will start a 3 month window of no incompatible changes). We will have to potentially temporarily disable envoy on our downstream pipeline if we cannot get it fixed this week.

To consolidate efforts, these issues are also related to Bazel incompatible flags:

https://github.com/envoyproxy/envoy/pull/7058 - migrates for https://github.com/bazelbuild/bazel/issues/7260 and https://github.com/bazelbuild/bazel/issues/7793
https://github.com/envoyproxy/envoy/issues/6968 - requires for https://github.com/bazelbuild/bazel/issues/7687.
https://github.com/envoyproxy/envoy/pull/6866 - (seemingly stalled?) update of Bazel to 0.25.

@hlopko let me know if I can help with any of these!

Both https://github.com/envoyproxy/envoy/issues/6968 and https://github.com/envoyproxy/envoy/pull/6866 could use somebody with Envoy domain knowledge to push them forward :)
https://github.com/envoyproxy/envoy/pull/7058 seems unblocked and will be submitted hopefully soon.

Seems this issue could be closed?

Closing, thank you @keith @hlopko for driving this forward!


python3Packages.pytrends: disable python2

Motivation for this change
noticed it was broken
noticed it was broken reviewing: #95516
Things done

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

[x] NixOS
[ ] macOS
[ ] other Linux distributions

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

Result of nixpkgs-review pr 95525 1


EPIC: auto-generate artifacthub metadata and consume it on policies

We have defined the usage of artifacthub-pkg.yml fields in UI, and how to derive them from metadata.yml.
We have hand-crafted artifacthub-pkg.yml for the policies to unblock the UI work.
Still, we are missing automating the generation of artifacthub-pkg.yml:

[x] RFC for implementation approach and alternatives:  https://github.com/kubewarden/rfc/pull/15
[x] https://github.com/kubewarden/kwctl/issues/418
[x] kubewarden/github-actions#48
[x] Update policy templates if needed, so future community policies are easier to publish on artifacthub
[x] https://github.com/kubewarden/docs/pull/173
[x] https://github.com/kubewarden/kubewarden-controller/issues/325
[ ] #418

Update GHA workflows to use the new kwctl command, and, either generate the new artifacthub-pkg.yml, or make sure it has automatically been updated and committed, prior to release

We cannot generate the artifacthub-pkg as part of our pipeline. The workflow of the policy author must be something like that:

Generate artifacthub-pkg.yml via the scaffold command
Commit the file into git
Create a new v<something tag

IMHO the artifacthub-pkg.yml contents should follow the same versioning of the policy, meaning that checking out a specific tag of the policy repository will show what the metadata of ArtifactHUB looked like.
Moreover, when I did the last round of updates of policies, it turned out that ArtifactHUB scanner takes into account the version of the policy mentioned inside of the artifacthub-pkg.yml file in order to update its database.
Long story short:

artifacthub-pkg.yml says the policy version is 0.1.0
-> AH scan updates the database
Ouch, we have a typo inside of the artifacthub-pkg.yml file, let's fix it and update the createdAt field
-> AH scan the repo, but doesn't change the database
Ouch, the metadata on AH is stale. Let's bump the version to be 0.1.1 inside of artifacthub-pkg.yml
-> AH scan updates the database

Sorry for the long explanation, that's to say... we need to bump the version attribute inside of the artifacthub-pkg.yml file to have the AH database updated. Hence we have to tie this operation with a git tag.

Re-release policies

In theory we don't have to do it. The data inside of artifacthub-pkg.yml should already be correct. We can slowly regenerate that with future releases of the policies

Update policy templates if needed, so future community policies are easier to publish on artifacthub

Yes, to be more specific. I would love to have new Makefile targets that: generates the artifacthub-pkg.yml file using the scaffold command

Update GHA workflows to use the new kwctl command, and, either generate the new artifacthub-pkg.yml, or better, make sure it has automatically been generated, as we do with metadata.yml, prior to release

More about that, I think we should have a check that makes sure that, when doing a policy release, the TAG pushed matches with the version of the package inside of Cargo.toml (if that applies) and the value inside of artifacthub-pkg.yml.

It seems that artifacthub provides a cli, ah. Maybe we can edit the templates so, if uncommenting "publish to artifacthub", the correct GHA workflow will be run, the artifacthub-pkg checked, the version compared, etc, so policy authors don't need a flowchart just to build a policy.

Moving to blocked, the community policies cannot be automatically published on ArtifactHub because of this issue: https://github.com/kubewarden/github-actions/issues/70

Closing, everything has been done. Now we're waiting for the community to update their policies


Syntax error fix

catch { } -> catch (e) { }

@davidengelmaier sorry my fault! Corrected it. Version 4.34.4 just released.

@davidengelmaier sorry my fault! Corrected it. Version 4.34.4 just released.


Decentralized profile implementation - 1/3

Description
This PR introduce the profile module and implements the Account in desmos.
It is one of the 3 PRs closing #56 .
Checklist

[x] Targeted PR against correct branch.
[x] Linked to Github issue with discussion and accepted design OR link to spec that describes this work.
[x] Wrote unit tests.
[x] Wrote integration tests (simulation & CLI).
[x] Updated the documentation.
[x] Added an entry to the CHANGELOG.md file.
[ ] Re-reviewed Files changed in the Github PR explorer.

Codecov Report

Merging #122 into master will increase coverage by 0.68%.
The diff coverage is 87.92%.

@@            Coverage Diff             @@
##           master     #122      +/-   ##
==========================================
+ Coverage   83.64%   84.33%   +0.68%
==========================================
  Files          38       49      +11
  Lines        1651     1972     +321
==========================================
+ Hits         1381     1663     +282
- Misses        239      267      +28
- Partials       31       42      +11


actionStep: it's okay to be empty

experimental branch

This might still be a valid fallback, if we can treat an empty array as an implicit Wait.


Context should use invocation timeout.

It seems like the configuration in GrpcClient allows us to configure the invocation timeout.  This is used when setting the dial options, but it is not used when the context is created for the invocation here:
https://github.com/pip-services3-go/pip-services3-grpc-go/blob/a8222275564ad68209d349d04bd15c2b4d350deb/clients/GrpcClient.go#L273
By having this hard-coded to time.Second we're precluding making relatively expensive calls to a service because, even if the Grpc connection will permit a 10-second call (the default), the golang context will cancel after 1 second, making the invocation timeout configuration relatively useless unless using CallWithContext.  The CommandableGrpc client uses the call method, and so if you choose to go the commandable route, you have no option but to cancel all calls after 1 second, which is undesirable for some calls.
[Edit:] My suggestion is to replace time.Second with c.Timeout if we're not going to propagate context from the outside world.

Updated GrpcClient, see new release v1.2.2.
Thanks!


Console Warnings Cause CI/CD Tests to Fail

Expected Behavior
The current state of the code should pass the CI/CD checks
Actual Behavior
The warnings that are thrown in set variables functions cause the CI/CD tests to fail.
Reproduction Scenario, Platform, and Version
I discovered this while submitting a pr for an unrelated issue
Steps to Reproduce
Submit a pull request

@thoughtassassin this is plainly not the case. See e.g. https://github.com/adobe/aio-cli-plugin-cloudmanager/runs/2399747084 (the most recent action on the main branch)

@justinedelson I didn't see that my PR failed because of a linting issue. The check that I saw failed gave a preview that showed those warnings so I thought that was the cause. When I checked this morning I saw that it was the linting that caused the checks to fail. I'll close this as it does not cause the checks to fail


Update Pytorch/XLA 2.4 release wheel to rc8

Description
Please include a summary of relevant context/issue and your changes.
Tests
Please describe the tests that you ran on Cloud VM to verify changes.
Instruction and/or command lines to reproduce your tests: ...
List links for your tests (use go/shortn-gen for any internal link): ...
Checklist
Before submitting this PR, please make sure (put X in square brackets):

[x] I have performed a self-review of my code.
[x] I have necessary comments in my code, particularly in hard-to-understand areas.
[x] I have run one-shot tests and provided workload links above if applicable.
[x] I have made or will make corresponding changes to the doc if needed.

@zpcore Can you also merge this PR? Thanks!


Extend the test grid to include coverage 4.0. Allow Python 3.2 to fail.

Seems the previous PR didn't actually test the changes at all.

PyPI release? :grin:

Sure, tonight or tomrrow, I'll wrap it up. Thnx, @ionelmc!


Enforce updated changelog per-directory

Is your feature request related to a problem? Please describe.
My project includes multiple crates in a workspace, each with separate changelogs.
Describe the solution you'd like
I'd like for there to be a match key that accepts a directory to search for changes in, alongside the changeLogPath key.
Describe alternatives you've considered
I've tried to use this in a reusable workflow, but I can not get the action to only run in a subdirectory, since those check out their own sources.

Hi @7596ff!
🤔 Any reason to not have multiple invocations of the changelog enforcer in your workflow for each path?

Hi @7596ff
I'm going to close this for now as I haven't heard from you. Please let me know if running multiple steps/invocations of the changelog enforcer doesn't work for you!


tcllib (tcl standard library) not usable in interpreter

Describe the bug
Attempting to package require lambda (or anything in tcllib) yields a message about not being able to read the variable dir: Error: pkgIndex.tcl, 11 can't read "dir": no such variable
The Tcl wiki claims that this variable should always exist when pkgIndex.tcl files are read: https://wiki.tcl-lang.org/page/dir
Expected Behavior
It'd be pretty darn useful if this worked.
Environment
Git commit: 51302eb80b11576a01171d33452c362301d55143
kernel: Linux 6.8.0-51-generic
os: Ubuntu 24.04 LTS (Noble Numbat)
cmake version 3.24.2
-- The CXX compiler identification is GNU 13.3.0
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- OpenROAD version: v2.0-17776-g51302eb80
-- System name: Linux
-- Compiler: GNU 13.3.0
-- Build type: RELEASE
-- Install prefix: /usr/local
-- C++ Standard: 17
-- C++ Standard Required: ON
-- C++ Extensions: OFF
-- The C compiler identification is GNU 13.3.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Performing Test C_COMPILER_SUPPORTS__-Wall
-- Performing Test C_COMPILER_SUPPORTS__-Wall - Success
-- Performing Test CXX_COMPILER_SUPPORTS__-Wall
-- Performing Test CXX_COMPILER_SUPPORTS__-Wall - Success
-- Performing Test C_COMPILER_SUPPORTS__-Wno-array-bounds
-- Performing Test C_COMPILER_SUPPORTS__-Wno-array-bounds - Success
-- Performing Test CXX_COMPILER_SUPPORTS__-Wno-array-bounds
-- Performing Test CXX_COMPILER_SUPPORTS__-Wno-array-bounds - Success
-- Performing Test C_COMPILER_SUPPORTS__-Wno-nonnull
-- Performing Test C_COMPILER_SUPPORTS__-Wno-nonnull - Success
-- Performing Test CXX_COMPILER_SUPPORTS__-Wno-nonnull
-- Performing Test CXX_COMPILER_SUPPORTS__-Wno-nonnull - Success
-- Performing Test C_COMPILER_SUPPORTS__-Wno-maybe-uninitialized
-- Performing Test C_COMPILER_SUPPORTS__-Wno-maybe-uninitialized - Success
-- Performing Test CXX_COMPILER_SUPPORTS__-Wno-maybe-uninitialized
-- Performing Test CXX_COMPILER_SUPPORTS__-Wno-maybe-uninitialized - Success
-- Performing Test C_COMPILER_SUPPORTS__-Wno-format-overflow
-- Performing Test C_COMPILER_SUPPORTS__-Wno-format-overflow - Success
-- Performing Test CXX_COMPILER_SUPPORTS__-Wno-format-overflow
-- Performing Test CXX_COMPILER_SUPPORTS__-Wno-format-overflow - Success
-- Performing Test C_COMPILER_SUPPORTS__-Wno-unused-variable
-- Performing Test C_COMPILER_SUPPORTS__-Wno-unused-variable - Success
-- Performing Test CXX_COMPILER_SUPPORTS__-Wno-unused-variable
-- Performing Test CXX_COMPILER_SUPPORTS__-Wno-unused-variable - Success
-- Performing Test C_COMPILER_SUPPORTS__-Wno-unused-function
-- Performing Test C_COMPILER_SUPPORTS__-Wno-unused-function - Success
-- Performing Test CXX_COMPILER_SUPPORTS__-Wno-unused-function
-- Performing Test CXX_COMPILER_SUPPORTS__-Wno-unused-function - Success
-- Performing Test C_COMPILER_SUPPORTS__-Wno-write-strings
-- Performing Test C_COMPILER_SUPPORTS__-Wno-write-strings - Success
-- Performing Test CXX_COMPILER_SUPPORTS__-Wno-write-strings
-- Performing Test CXX_COMPILER_SUPPORTS__-Wno-write-strings - Success
-- Performing Test C_COMPILER_SUPPORTS__-Wno-sign-compare
-- Performing Test C_COMPILER_SUPPORTS__-Wno-sign-compare - Success
-- Performing Test CXX_COMPILER_SUPPORTS__-Wno-sign-compare
-- Performing Test CXX_COMPILER_SUPPORTS__-Wno-sign-compare - Success
-- Performing Test C_COMPILER_SUPPORTS__-Wno-deprecated
-- Performing Test C_COMPILER_SUPPORTS__-Wno-deprecated - Success
-- Performing Test CXX_COMPILER_SUPPORTS__-Wno-deprecated
-- Performing Test CXX_COMPILER_SUPPORTS__-Wno-deprecated - Success
-- Performing Test C_COMPILER_SUPPORTS__-Wno-c++11-narrowing
-- Performing Test C_COMPILER_SUPPORTS__-Wno-c++11-narrowing - Failed
-- Performing Test CXX_COMPILER_SUPPORTS__-Wno-c++11-narrowing
-- Performing Test CXX_COMPILER_SUPPORTS__-Wno-c++11-narrowing - Failed
-- Performing Test C_COMPILER_SUPPORTS__-Wno-register
-- Performing Test C_COMPILER_SUPPORTS__-Wno-register - Failed
-- Performing Test CXX_COMPILER_SUPPORTS__-Wno-register
-- Performing Test CXX_COMPILER_SUPPORTS__-Wno-register - Success
-- Performing Test C_COMPILER_SUPPORTS__-Wno-format
-- Performing Test C_COMPILER_SUPPORTS__-Wno-format - Success
-- Performing Test CXX_COMPILER_SUPPORTS__-Wno-format
-- Performing Test CXX_COMPILER_SUPPORTS__-Wno-format - Success
-- Performing Test C_COMPILER_SUPPORTS__-Wno-reserved-user-defined-literal
-- Performing Test C_COMPILER_SUPPORTS__-Wno-reserved-user-defined-literal - Failed
-- Performing Test CXX_COMPILER_SUPPORTS__-Wno-reserved-user-defined-literal
-- Performing Test CXX_COMPILER_SUPPORTS__-Wno-reserved-user-defined-literal - Failed
-- Performing Test C_COMPILER_SUPPORTS__-fpermissive
-- Performing Test C_COMPILER_SUPPORTS__-fpermissive - Failed
-- Performing Test CXX_COMPILER_SUPPORTS__-fpermissive
-- Performing Test CXX_COMPILER_SUPPORTS__-fpermissive - Success
-- Performing Test C_COMPILER_SUPPORTS__-x
-- Performing Test C_COMPILER_SUPPORTS__-x - Failed
-- Performing Test CXX_COMPILER_SUPPORTS__-x
-- Performing Test CXX_COMPILER_SUPPORTS__-x - Failed
-- Performing Test C_COMPILER_SUPPORTS__c++
-- Performing Test C_COMPILER_SUPPORTS__c++ - Failed
-- Performing Test CXX_COMPILER_SUPPORTS__c++
-- Performing Test CXX_COMPILER_SUPPORTS__c++ - Failed
-- Performing Test C_COMPILER_SUPPORTS__-std=c++17
-- Performing Test C_COMPILER_SUPPORTS__-std=c++17 - Failed
-- Performing Test CXX_COMPILER_SUPPORTS__-std=c++17
-- Performing Test CXX_COMPILER_SUPPORTS__-std=c++17 - Success
-- Performing Test C_COMPILER_SUPPORTS__-Wno-unused-but-set-variable
-- Performing Test C_COMPILER_SUPPORTS__-Wno-unused-but-set-variable - Success
-- Performing Test CXX_COMPILER_SUPPORTS__-Wno-unused-but-set-variable
-- Performing Test CXX_COMPILER_SUPPORTS__-Wno-unused-but-set-variable - Success
-- TCL library: /usr/lib/aarch64-linux-gnu/libtcl.so
-- TCL header: /usr/include/tcl/tcl.h
-- TCL readline library: /usr/lib/aarch64-linux-gnu/libtclreadline.so
-- TCL readline header: /usr/include/aarch64-linux-gnu
-- Found SWIG: /usr/local/bin/swig (found suitable version "4.1.0", minimum required is "4.0")
-- Using SWIG >= 4.1.0 -flatstaticmethod flag for python
-- Found Boost: /usr/local/lib/cmake/Boost-1.80.0/BoostConfig.cmake (found version "1.80.0")
-- boost: 1.80.0
-- Found GTest: /usr/local/lib/cmake/GTest/GTestConfig.cmake (found version "1.13.0")
-- GTest: 1.13.0
-- Found Python3: /usr/include/python3.12 (found version "3.12.3") found components: Development Development.Module Development.Embed
-- Found ZLIB: /usr/lib/aarch64-linux-gnu/libz.so (found version "1.3.#define ZLIB_VERSION "1.3"")
-- Found Threads: TRUE
-- spdlog: 1.15.0
-- Found BISON: /usr/bin/bison (found version "3.8.2")
-- Could NOT find Doxygen (missing: DOXYGEN_EXECUTABLE)
-- STA version: 2.6.0
-- STA git sha: aa598a2f14c5c142e90391a69988523505e7db3d
-- System name: Linux
-- Compiler: GNU 13.3.0
-- Build type: RELEASE
-- Build CXX_FLAGS: -O3 -DNDEBUG
-- Install prefix: /usr/local
-- Found FLEX: /usr/bin/flex (found version "2.6.4")
-- TCL library: /usr/lib/aarch64-linux-gnu/libtcl.so
-- TCL header: /usr/include/tcl/tcl.h
-- TCL readline library: /usr/lib/aarch64-linux-gnu/libtclreadline.so
-- TCL readline header: /usr/include/aarch64-linux-gnu/tclreadline.h
-- CUDD library: /usr/local/lib/libcudd.a
-- CUDD header: /usr/local/include/cudd.h
-- SSTA: 0
-- Found SWIG: /usr/local/bin/swig (found suitable version "4.1.0", minimum required is "3.0")
-- STA executable: /Users/donn/efabless/openroad/src/sta/app/sta
-- Found re2: /opt/or-tools/lib/cmake/re2/re2Config.cmake (found version "11.0.0")
-- Found Clp: /opt/or-tools/lib/cmake/Clp/ClpConfig.cmake (found version "1.17.7")
-- Found Cbc: /opt/or-tools/lib/cmake/Cbc/CbcConfig.cmake (found version "2.10.7")
-- Found SCIP: /opt/or-tools/lib/cmake/scip/scip-config.cmake (found version "9.0.0")
-- Found OpenMP_CXX: -fopenmp (found version "4.5")
-- Found OpenMP: TRUE (found version "4.5")
-- Found OR-Tools: /opt/or-tools/lib/cmake/ortools (version: 9.11.9999)
-- TCL library: /usr/lib/aarch64-linux-gnu/libtcl.so
-- TCL header: /usr/include/tcl/tcl.h
-- Found OpenMP_C: -fopenmp (found version "4.5")
-- Found OpenMP: TRUE (found version "4.5")
-- Found OpenMP: TRUE (found version "4.5")
-- GUI is enabled
-- Found Boost: /usr/local/lib/cmake/Boost-1.80.0/BoostConfig.cmake (found version "1.80.0") found components: serialization
-- Could NOT find VTune (missing: VTune_LIBRARIES VTune_INCLUDE_DIRS)
-- Found Boost: /usr/local/lib/cmake/Boost-1.80.0/BoostConfig.cmake (found suitable version "1.80.0", minimum required is "1.78")
-- TCL library: /usr/lib/aarch64-linux-gnu/libtcl.so
-- TCL header: /usr/include/tcl/tcl.h
-- Found Boost: /usr/local/lib/cmake/Boost-1.80.0/BoostConfig.cmake (found version "1.80.0") found components: serialization system thread
-- Found Boost: /usr/local/lib/cmake/Boost-1.80.0/BoostConfig.cmake (found version "1.80.0")
-- Found Eigen3: /usr/local/share/eigen3/cmake/Eigen3Config.cmake (found version "3.4.1")
-- TCL readline enabled
-- Tcl Extended disabled
-- Python3 enabled
-- Configuring done
-- Generating done
-- Build files have been written to: /tmp/tmp.MvPGNhaTbr

To Reproduce
./build/src/openroad -exit <(echo "package require lambda")

Relevant log output
OpenROAD v2.0-17776-g51302eb80
Features included (+) or not (-): +GPU +GUI +Python
This program is licensed under the BSD-3 license. See the LICENSE file for details.
Components of this program may be licensed under more restrictive licenses which must be honored.
error reading package index file /usr/lib/tcltk/aarch64-linux-gnu/tclreadline2.3.8/pkgIndex.tcl: Error: pkgIndex.tcl, 11 can't read "dir": no such variable
error reading package index file /usr/share/tcltk/tcllib1.21/pkgIndex.tcl: Error: pkgIndex.tcl, 11 can't read "dir": no such variable
error reading package index file /usr/share/tcltk/tcl8.6/http1.0/pkgIndex.tcl: Error: pkgIndex.tcl, 11 can't read "dir": no such variable
error reading package index file /usr/share/tcltk/tcl8.6/opt0.4/pkgIndex.tcl: Error: pkgIndex.tcl, 12 can't read "dir": no such variable
Error: 16, 1 can't find package lambda

Screenshots
No response
Additional Context
No response

Related/possible duplicate of #5875


Fixes 4561: log/return domain on pulp task failures

Summary
added the domain to logging/errors of failed pulp tasks
Testing steps
create a repo with snapshotting pointing at a URL that is nonsense.  Monitor the logs:
error="domain ed88dfc6 had Pulp Task error 'traceback:   File...

https://issues.redhat.com/browse/HMS-4561

/retest

oh, this doesn't need qe


Reduce the amount of reimplementation needed between frontends to the emulator

Currently there is a basic desktop winit application (main.rs) that I use for displaying from Rust, but for web I need to redo some of the external connections from scratch by hooking up to a canvas and hooking into the web audio API. While the three.js stuff should definitely stay in JS, I should look into trying to do a winit web export and hook into a canvas, which should hopefully remove the need to manually scale canvas data. Might be worth combining radio with some web_sys work to create the audiocontext as well

Taken care of in https://github.com/silk-suite/silk8/commit/01eb1850d5463345962820195144d46e664388c5, seems like this solved the divergent behavior issues as well!


SharpFont.HarfBuzz should use the latest (Portable) version of SharpFont

Just checking in to see whether the discussion in #7 is still alive. I am finally concentrating solely on using SharpFont and SharpFont.HarfBuzz. This issue is to help reboot the threads of the other discussion.
Since SharpFont has already taken a step in the right direction, some suggestions:

SharpFont.HarfBuzz currently depends on the old version of the SharpFont code, so it would be great to have it running against the new code.

There are currently three projects - SharpFont, SharpFont.Portable, and SharpFont.iOS. The only difference between SharpFont.Portable and SharpFont is the bitmap code in FTBitmap.cs, so maybe just that code can be abstracted into a separate library named SharpFont.System.Drawing or some such?

Additionally, perhaps SharpFont.iOS could be removed? The currently #ifdef'd out APIs could just throw an exception at runtime if they are called on the wrong OS. It seems the #if's should be checking for macOS rather than iOS, i.e.:
#if macOS
rather than
#if !iOS
To do this without conditionally compiled code requires a way to determine the OS from the portable class library, which is possible in this specific case. I'll prepare a pull request for this.
tl;dr: Replace all three dll's with a single portable library, and move the platform-specific bitmap code to a different assembly (or just publish it as a source file to be included directly.

Is the 64-bit patch to freetype really required? I ask because it would be ideal to not have to worry about producing custom builds of the native binaries. On the other hand, if native builds are needed for other reasons, then this doesn't matter as much.

It would be great if there were a self-contained version of SharpFont.HarfBuzz that included all the dependencies, including C# FreeType wrappers and the native libraries, i.e. everything that is currently in SharpFont. Is this feasible?

Any traction on getting rid of the glib dependency that was mentioned in #7?

Cheers,

Sorry, I've still been really busy w/ other things - not sure when I can devote time to actual development.

Will naturally happen next time I have a few hours to devote to my open source stuff.
I specifically added that code to help lower the barrier to entry and make it easier to shuttle rendered glyphs to other libraries that accept Bitmaps. From what I've seen, this function does get a lot of use currently - so if possible, finding some way to keep it on platforms that have System.Drawing would be ideal...

The current PCL setup including iOS/desktop/PCL was contributed in one go, and I'm not super familiar with PCL and the recommended patterns for handling platform-specific code, so I'll gladly accept a PR for this!

Yep. The solution before was to use the preprocessor to build separate versions of SharpFont for Windows. FreeType makes heavy use of the native long type. On Windows, this is always 4 bytes. On every other platform, it's 4 bytes on x86 and 8 bytes on x64. C# has no integral type that behaves this way. The patch forces __int64 on Windows x64 on the native side instead, so that we can use the C# IntPtr and UIntPtr types.

Windows doesn't really have package management, the GnuWin32 builds are nearly a decade out of date and have no 64-bit builds. The only problem we would possibly run into is someone using our dll and their own lib + headers in a 64-bit C/C++ program, which would be strange to say the least.

Possibly, we would have to find a way to pack the native dlls in and select the right one based on host x86/x64 bitness. We would still need multiple builds based on the version of the VC++ runtime that freetype6.dll was built with (unless we can strip it out, which is possible, but I'm unsure of the side effects). I haven't seen anyone else do this, would be pretty cool if we could get it working

Not yet but seems like it's just rebuilding harfbuzz with some flags turned off?

I'll see if I have any time this week to at least touch on a few of these points, at the very least 5.


rename hoard to deb

The change also includes minor style fixes for some comments.

Thanks - we need to do this (doh that we forgot to do it before), but it's going to have the unfortunate side effect of changing all the memos in the tests. Nothing to do about that except copy the results from the actual output to the wanted output.

Memos and other comments are fixed, PTAL.

I suspect the appveyor error was probably due to what's fixed in #157

issue subject?

@mattn sorry, it's nothing directly related to what you were doing in #157. i'm just guessing that the failure on @rakyll's last commit is erroneous, caused by the issue you fixed in #157.

No prob.

i hear that closing and reopening might kick the checks...let's see if it does.

ding ding ding!


Pinning package to index without fallback

I am trying to pin an internal package to our internal package registry. For the sake of testing how the pinning works, I've called the package pandas:
# uv.toml
[[index]]
name = "my-index"
url = "https://my.package.index/"

[sources]
pandas = { index = "my-index" }

When uv is able to find pandas on the internal index, it picks it up from there and runs it as expected. However, if it is unable to find it, it falls back to using pandas from the public PyPi registry.
Due to the risk of dependency confusion attacks, we need to make sure that our internal packages are always installed from the internal index with no exception. If the internal index goes down for some reason, uv should simply fail to install the package instead of falling back to using something from a public index.
It's possible I'm missing a setting that allows for configuring this, but I didn't see this behaviour described in the documentation. If this doesn't already exist, it seems like a necessity for security purposes.

You can set the index as the default which is discussed in https://docs.astral.sh/uv/configuration/indexes/#defining-an-index and disables the default PyPI index.

@zanieb Thanks for the tip, I hadn't thought to use the default flag for this.
I'll give this a try tomorrow. However, my immediate question is, wouldn't this prevent installation of dependencies that are on the public index? If my package depends on requests, for instance, I want to make sure that my package is always installed from the private index, while requests and really everything else is resolved just as it would in a default setup.

Yes that’s right. But given that clarification in your requirements, I think the index is already doing  what you want, without any changes to the configuration you posted. If you explicitly associate a dependency with an index, we will only ever look at that index — we would never get Pandas from PyPI (but we would look at PyPI for Pandas’ dependencies).

Yeah, like in response to:

we need to make sure that our internal packages are always installed from the internal index with no exception. If the internal index goes down for some reason, uv should simply fail to install the package instead of falling back to using something from a public index.

This should already be the case. Unless someone passes --no-sources?

Yes that’s right. But given that clarification in your requirements, I think the index is already doing what you want, without any changes to the configuration you posted. If you explicitly associate a dependency with an index, we will only ever look at that index — we would never get Pandas from PyPI (but we would look at PyPI for Pandas’ dependencies).

This isn't what I'm seeing happen in my case. Perhaps I'm doing something wrong, so I'll try to explain what I'm doing with as much detail as possible.
Package side
pyproject.toml
[project]
name = "pandas"
version = "0.1.0"
description = "Add your description here"
requires-python = ">=3.13"
dependencies = []

[project.scripts]
pandas = "pandas:main"

[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"

[tool.uv]
publish-url = "https://my.package.index/"

src/pandas/__init__.py
def main() -> None:
    print("Hello from pandas!")

Client side
~/.config/uv.toml
[[index]]
name = "my-index"
url = "https://my.package.index/"

[sources]
pandas = { index = "my-index" }

With the package published on the index:
$ uvx pandas
Installed 1 package in 2ms
Hello from pandas!

After clearing the uv cache and deleting the package from the index:
$ uvx pandas
Prepared 6 packages in 1.11s
Installed 6 packages in 38ms
 + numpy==2.1.3
 + pandas==2.2.3
 + python-dateutil==2.9.0.post0
 + pytz==2024.2
 + six==1.16.0
 + tzdata==2024.2
The executable `pandas` was not found.
warning: Package `pandas` does not provide any executables.

If I instead try using my pandas a dependency in a script with a pyproject.toml file, I get a similar result. uv then populates my uv.lock file with the following entry for pandas:
[[package]]
name = "pandas"
version = "2.2.3"
source = { registry = "https://my.package.index/" }
dependencies = [
    { name = "numpy" },
    { name = "python-dateutil" },
    { name = "pytz" },
    { name = "tzdata" },
]
sdist = { url = "https://files.pythonhosted.org/packages/9c/d6/9f8431bacc2e19dca897724cd097b1bb224a6ad5433784a44b587c7c13af/pandas-2.2.3.tar.gz", hash = "sha256:4f18ba62b61d7e192368b84517265a99b4d7ee8912f8708660fb4a366cc82667", size = 4399213 }
wheels = [
    { url = "https://files.pythonhosted.org/packages/64/22/3b8f4e0ed70644e85cfdcd57454686b9057c6c38d2f74fe4b8bc2527214a/pandas-2.2.3-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:f00d1345d84d8c86a63e476bb4955e46458b304b9575dcf71102b5c705320015", size = 12477643 },
    { url = "https://files.pythonhosted.org/packages/e4/93/b3f5d1838500e22c8d793625da672f3eec046b1a99257666c94446969282/pandas-2.2.3-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:3508d914817e153ad359d7e069d752cdd736a247c322d932eb89e6bc84217f28", size = 11281573 },
    { url = "https://files.pythonhosted.org/packages/f5/94/6c79b07f0e5aab1dcfa35a75f4817f5c4f677931d4234afcd75f0e6a66ca/pandas-2.2.3-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:22a9d949bfc9a502d320aa04e5d02feab689d61da4e7764b62c30b991c42c5f0", size = 15196085 },
    { url = "https://files.pythonhosted.org/packages/e8/31/aa8da88ca0eadbabd0a639788a6da13bb2ff6edbbb9f29aa786450a30a91/pandas-2.2.3-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f3a255b2c19987fbbe62a9dfd6cff7ff2aa9ccab3fc75218fd4b7530f01efa24", size = 12711809 },
    { url = "https://files.pythonhosted.org/packages/ee/7c/c6dbdb0cb2a4344cacfb8de1c5808ca885b2e4dcfde8008266608f9372af/pandas-2.2.3-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:800250ecdadb6d9c78eae4990da62743b857b470883fa27f652db8bdde7f6659", size = 16356316 },
    { url = "https://files.pythonhosted.org/packages/57/b7/8b757e7d92023b832869fa8881a992696a0bfe2e26f72c9ae9f255988d42/pandas-2.2.3-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:6374c452ff3ec675a8f46fd9ab25c4ad0ba590b71cf0656f8b6daa5202bca3fb", size = 14022055 },
    { url = "https://files.pythonhosted.org/packages/3b/bc/4b18e2b8c002572c5a441a64826252ce5da2aa738855747247a971988043/pandas-2.2.3-cp313-cp313-win_amd64.whl", hash = "sha256:61c5ad4043f791b61dd4752191d9f07f0ae412515d59ba8f005832a532f8736d", size = 11481175 },
    { url = "https://files.pythonhosted.org/packages/76/a3/a5d88146815e972d40d19247b2c162e88213ef51c7c25993942c39dbf41d/pandas-2.2.3-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:3b71f27954685ee685317063bf13c7709a7ba74fc996b84fc6821c59b0f06468", size = 12615650 },
    { url = "https://files.pythonhosted.org/packages/9c/8c/f0fd18f6140ddafc0c24122c8a964e48294acc579d47def376fef12bcb4a/pandas-2.2.3-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:38cf8125c40dae9d5acc10fa66af8ea6fdf760b2714ee482ca691fc66e6fcb18", size = 11290177 },
    { url = "https://files.pythonhosted.org/packages/ed/f9/e995754eab9c0f14c6777401f7eece0943840b7a9fc932221c19d1abee9f/pandas-2.2.3-cp313-cp313t-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:ba96630bc17c875161df3818780af30e43be9b166ce51c9a18c1feae342906c2", size = 14651526 },
    { url = "https://files.pythonhosted.org/packages/25/b0/98d6ae2e1abac4f35230aa756005e8654649d305df9a28b16b9ae4353bff/pandas-2.2.3-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1db71525a1538b30142094edb9adc10be3f3e176748cd7acc2240c2f2e5aa3a4", size = 11871013 },
    { url = "https://files.pythonhosted.org/packages/cc/57/0f72a10f9db6a4628744c8e8f0df4e6e21de01212c7c981d31e50ffc8328/pandas-2.2.3-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:15c0e1e02e93116177d29ff83e8b1619c93ddc9c49083f237d4312337a61165d", size = 15711620 },
    { url = "https://files.pythonhosted.org/packages/ab/5f/b38085618b950b79d2d9164a711c52b10aefc0ae6833b96f626b7021b2ed/pandas-2.2.3-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:ad5b65698ab28ed8d7f18790a0dc58005c7629f227be9ecc1072aa74c0c1d43a", size = 13098436 },
]

Based on this, it does seem that uv is using my index as the source for the package, but somehow the files themselves are coming from the public index. Not sure if this means that our registry is redirecting these requests to PyPI or if uv itself is doing that. In case it's relevant, our index is on a self-hosted GitLab instance.

We don't respect sources defined in uv.toml. This will be an error in the next minor release. You should move the contents of ~/.config/uv.toml into pyproject.toml.

Thanks, that is good to know. However, I'm still seeing the exact same results with the source specified in pyproject.toml. Again, not sure if the source still appearing in the uv.lock file means that it's the registry itself doing this.
Also, not respecting sources in uv.toml would unfortunately not work for what we are trying to do. We would love to use uv as a single global Python package manager so that developers can manage internal CLI tools on their machines, or for deploying and executing scripts on servers. Is this not an intended use case for uv?

I misunderstood what you're trying to do here, but no, it won't work. We don't respect sources on tool installs, which are global (though we do respect indexes). Sources are intended for use in projects. I defer to @zanieb on whether we want that to be supported, since it intersects with the tool design.

Thanks for clarifying, and apologies if my explanation wasn't clear. Still getting accustomed to uv's way of doing things.
This would be a really helpful feature to have. It sounds like we can still specify the index globally, but without the ability to also pin packages globally, there is a risk of unintentionally executing a tool that isn't our own.

Just wanted to follow up here to say that this indeed doesn't even seem to be a uv issue but rather a GitLab issue. By default, GitLab forwards requests for packages that aren't on the registry to PyPI. Knowing this, I've set our private index to default and feel satisfied enough that this should avoid any potential security issues.
I still think it would be nice to pin tools, but otherwise wanted to mention this in case anyone else is encountering similar issues.

Thanks!
I need to think about how to pin indexes for tools. It seems nice to have but I'm not sure how we'll support it yet.


uinbanten.txt

Please help add the domain @uinbanten.ac.id, I'm a student, it would be really helpful if I got a student package

@INISIAL-KICEL I have to close this request without merging, because you requested to add a non-existent domain to this repository: Host uinbanten.ac.id not found: 2(SERVFAIL) Please ensure that you are familiar with this repository rules located at the bottom of this page and submit a new request with the correct information. Thank you for your understanding!


assembly app needs to terminate on job killed

I manually killed a job in the arast queue but the app is still running:
2018-01-15 21:01:55: job 1 status: Queued
2018-01-15 21:11:59: job 1 status: Queued
2018-01-15 21:22:03: job 1 status: Queued
2018-01-15 21:31:06: job 1 status: Terminated by user
App needs to terminate on that status as well.

@olsonanl can this be addressed with the new scheduler in May?

Yes


Update iOS library to latest version 3.15 and optout method (iOS)

I only implemented the output for iOS, but I'm assuming it would be quite easy to set it up for Android.

@YannickGagnon shouldn't it be updated https://github.com/appfeel/analytics-google/blob/master/plugin.xml#L66 as well?

@miqmago, updated how? The file itself is updated but the reference is't, unless I'm missing something

Oh no, it's ok, my fault as I haven't seen that it was already updated the library file itself...
The problem I see with this PR is that you introduced a new method optOut in ios which has no equivalent in android, which will make a plugin error response in android platforms... Will you implement it in android as well?


Google Drive Support

Have the script write the data to a google drive directory. This will make it easier for the sunlight team to look at the data.

I've created a basic version of that copies over CSV data into google sheets - commit: a45ead8


Create process to publish scene services

Current scripts aren't sufficient. Need to build scripts to create hosted scene services from associated hosted feature services. Also need process to re-generate the scene cache.

Merge fixed from v.next. Closing issue.


[deliver] fix double screenshots directory on deliver setup

Fixes #13194
Problem
The full screenshots path was getting generated here - https://github.com/fastlane/fastlane/blob/dd0b74f87915dec2666efe938123116b4129cc0c/deliver/lib/deliver/setup.rb#L27
But then screenshots was getting appended to the path again here - https://github.com/fastlane/fastlane/blob/dd0b74f87915dec2666efe938123116b4129cc0c/deliver/lib/deliver/setup.rb#L130
Solution
Removed the second screenshots from getting appended in  the download_screenshots method

This fixes the newly created screenshots folder, however I have the feeling something else is going wrong here, e.g. https://github.com/fastlane/fastlane/pull/13195.
I'm worried something broke recently (e.g. https://github.com/fastlane/fastlane/issues/13176)

@KrauseFx Aight, I will look into those too 👌


RegEx Matching (Independent Publisher)

When submitting a connector, please make sure that you follow the requirements below, otherwise your PR might be rejected. We want to make you have a well-built connector, a smooth certification experience, and your users are happy :)
If this is your first time submitting to GitHub and you need some help, please sign up for this session.

[x] I attest that the connector doesn't exist on the Power Platform today. I've verified by checking the pull requests in GitHub and by searching for the connector on the platform or in the documentation.
[x] I attest that the connector works and I verified by deploying and testing all the operations.
[x] I attest that I have added detailed descriptions for all operations and parameters in the swagger file.
[x] I attest that I have added response schemas to my actions, unless the response schema is dynamic.
[x] I validated the swagger file, apiDefinition.swagger.json, by running paconn validate command.
[ ] If this is a certified connector, I confirm that apiProperties.json has a valid brand color and doesn't use an invalid brand color, #007ee5 or #ffffff. If this is an independent publisher connector, I confirm that I am not submitting a connector icon.

If you are an Independent Publisher, you must also attest to the following to ensure a smooth publishing process:

[x] I have named this PR after the pattern of "Connector Name (Independent Publisher)" ex: HubSpot Marketing (Independent Publisher)
[x] Within this PR markdown file, I have pasted screenshots that show: 3 unique operations (actions/triggers) working within a Flow. This can be in one flow or part of multiple flows. For each one of those flows, I have pasted in screenshots of the Flow succeeding.
[x] Within this PR markdown file, I have pasted in a screenshot from the Test operations section within the Custom Connector UI.
[ ] If the connector uses OAuth, I have provided detailed steps on how to create an app in the readme.md.

Hi @happyume!
Thank you for submitting your submission!
Your PR is missing screenshots from Test operations section, can you please add them?
You can refer to other open Independent Published PRs as an example.
Please let me know if you have any questions!

Hi v-EgorKozhadei,
I have now uploaded all the screenshots as required.
Please can you review.
Thanks

Hi @happyume thanks so much for your contribution :) If you've submitted all the connector artifacts and feel ready for certification, please remove "Proposal" from your pull request title.

Hi @natalie-pienkowska - The title is now updated to remove the word proposal. Thanks for the reminder :)

Hi again @happyume! Can you please remove the screenshots from the changed files and add them as images to the PR description? Screenshots from Test operations section are usually added here, not to the connector files. Sorry that I didn't mention it in my previous comments!

Hi @v-EgorKozhadei  - Thank-you for advising me of the corrections to be done. I have now updated as per your comments. Please can you let me know if any further changes are needed.

Hi @happyume! Thank you very much for all the updates!
Can you please add the screenshots to the PR description and remove it from the folder with connector files?
The files changed tab contains 11 files, we need only 3: apiProperties.json, apiDefinition.swagger.json and readme.md.
You can refer to this PR for an example. The screenshots in this one are in PR's description and the connector folder contains only 3 files.
Please let me know if you have any questions or need help!

Hi @v-EgorKozhadei  - I have now deleted the sub-directory images (with 8 screenshots) and loaded them in this Pull Request description (first post at the top).

Hi @happyume! Thanks a lot for all the updates!
I'd like to ask you for one more fix before we can proceed to the next step.
Can you please rename the connector folder from Proposal - RegEx Matching (Independent Publisher) to just RegEx Matching?

Hi @v-EgorKozhadei  - I have created a different directory (without the word Proposal) with the reviewed files and deleted the directory which had the word Proposal

Hi @happyume! Thanks a lot for the changes! Can you please also remove the (Independent Publisher) part as well? So that the folder name will be just RegEx Matching.

Hi @v-EgorKozhadei - Apologies, I misunderstood. This is now fixed.

[[certify-connector]]

Hi @happyume,
Congratulations, your connector is approved. We will move forward with the certification process. We are preparing your connector for production deployment and will queue up for the next deployment schedule. Once your connector onboards the next deployment schedule, it starts to deploy your connector in our production environments that typically takes 3-4 weeks.
Please let us know if you have any questions.
Thank you very much for working with us.

Hello @happyume,
I hope you are doing well.
Your connector is in production deployment and queued up for the next deployment schedule. This process typically takes 3-4 weeks. Please note that the documentation for your connector will not be generated until the deployment process is in the final steps.
Please let us know if you have any questions.
Thank you very much for working with us.

@happyume Congratulations! The deployment of your connector and documentation page is now complete, We have a short survey on the connector certification process that we would like for you to complete. Your feedback is appreciated and will help us improve the program, Thanks.


Using variables inside of code tabs

Is it possible to use some kind of variable mechanism in tabs contents?
I.e. i have such line in conf.py:
my_config_value = 42
rst_epilog = '.. |my_conf_val| replace:: %d' % my_config_value

And when i use it in some regular text like so:
My config value is |my_conf_val|!

Sphinx nicely replace the var and output as follows:
My config value is 42!

But when i try the same using this tabs extension:
.. tabs::

    .. code-tab:: javascript

        // |my_conf_val|

I get unreplaced |my_conf_val| string in the output.
Is it possible to achieve something similar (variables) with this extension?

This is an issue with sphinx, as the following also goes unreplaced:
.. code-block:: javascript

   // |my_conf_val|

A code-tab is just syntactic sugar for a code-block nested in a tab, so the issue here is that sphinx does not do this replacement in a code-block.

@djungelorm thanks for pointing that out! You're right of course, this is more low level issue. I've pushed an issue in sphinx repo


Cle/6038 send to stlt

This PR ensures that a universal pipeline messages makes it all the way through to the 'send' step with the correct task, action, and report_file records.
Test Steps:

Run unit tests
OR
Send a universal pipeline message
Check DB to see that there are steps for receive, convert, route, translate, batch, send

Changes

add new 'convert' TaskAction
update next step on receive to be 'convert' when it is universal pipeline
update batch function to work for both covid and UP
update batch function to make it testable with injectable mocked components
nullify next_action on task after it happens for UP, to match covid pipeline activities
insert tasks and actions for each step
create hl7MessageRSHelpers to take an HL7 message, create a RS Report based off of it, and add proper lineage
add batch function tests for UP. Note: There were not tests for covid batch and still are not. Tech debt.

Checklist
Testing

[x] Tested locally?
[x] Ran ./prime test or ./gradlew testSmoke against local Docker ReportStream container?
[x] Added tests?

I get a failure that looks to be on the send side:
09:13:00.797 [pool-2-thread-48][72] WARN  gov.cdc.prime.router.azure.ActionHistory - ***** FAILURE: sanity check comparing old headers list to new ReportFiles list:
[2022-10-12T13:13:00.798Z] header.receiverName = co-phd.full-elr-hl7, but reportFile has null.null

The files in the ready blob folder now have the schema name of CO.  Cool!