Suggestion: making exports visible only to the same directory with JSDoc @package tag

Search Terms
JSDoc package directory package-private
Suggestion
If an export is annotated with @package, that export is visible only to files in the same directory.
I can think of two levels of @package support: a soft one would remove these exports from auto completion if not visible. A hard one would also emit a compile error.
See also: Use JSDoc: @package
Use Cases
We organize source code using directory structure. We often make exports that are meant to be referenced only by sibling modules. However, JavaScript/TypeScript has no idea of scoping based on file system, so we are free to import such "local" exports everywhere. TypeScript could help us do file system-based scoping.
Examples
// ----- src/foo/bar.ts
/**
 * @package
 */
export fooBar = "fooBar";

// ----- src/foo/index.ts
// Can import fooBar from "./bar"
import { fooBar } from "./bar";

// ----- index.ts
// CANNOT import fooBar from "./foo/bar"
import { fooBar } from "./foo/bar";

Checklist
My suggestion meets these guidelines:

[x] This wouldn't be a breaking change in existing TypeScript/JavaScript code
[x] This wouldn't change the runtime behavior of existing JavaScript code
[x] This could be implemented without emitting different JS based on the types of the expressions
[x] This isn't a runtime feature (e.g. library functionality, non-ECMAScript syntax with JavaScript output, etc.)
[x] This feature would agree with the rest of TypeScript's Design Goals.

I'd recommend configurating these package entries in tsconfig.

Just FYI, I created a userland solution on this as a combination of ESLint plugin and TypeScript Language Service Plugin.
https://github.com/uhyo/eslint-plugin-import-access
However, the implementation of Language Service Plugin is kind of barbarous, so support from TypeScript is still wanted.

I have another suggestion to this: use modifier before export to set the visibility. By default, export is public export that every file can see this.
For example, if you want to export some function only inside of the directory (package), use inpackage export:
For file src/sort/sort.ts:
export function sort(/* some args here */) {  }
inpackage export function quickSortPartition(/* */) {  }

For file src/sort/ordered_stat.ts:
import { quickSortPartition } from "./sort.ts"

function findNthSmallest(/* */)
{
    // Can use partition function here
    quickSortPartition()
}

But for other file src/test.ts:
// Cannot import here
import { quickSortPartition } from "./sort/sort.ts"

I've been thinking about this quite a bit recently.
I like the idea of having a prefix for export declarations but:

inpackage - I find it a bit too cumbersome
package - unlike Java, where we explicitly declare packages, we don't have packages in JS. Actually, we do, but those are npm packages, so the term package might be confusing for pure JS developers.
I was thinking about private - personally I like the idea of private export const .... Private class members are only accessible within the same class, while private exports could only be accessible within their directory. But I'm sure some people will be against using private for exports. The other problem - what if we want to make the export available one dir or two dirs above the current one? We could have a types folder which should be accessible by the parent and all children. Something like private(../..) export definitely doesn't look right.

All of this led me to create a plugin (inspired by @uhyo's plugin) that adds support for @scope ../.. comments that define scopes for exports.
I wanted to create a TS decorator, that would make something like this possible:
@scope("../..")
export default "";

but, unfortunately, TS doesn't support export decorators. If TS allows it then at least we would be able to create ESLint/TS plugins that would read the decorators instead of comments (which look quite a bit uglier)

Suggestion : can use dir named "internal"  , this dir can be import same level dir file. same as golang internal dir rule !

@decoded4620, I was talking about export decorators meaning decorators that go before export statements, which are not supported by TS.

I was thinking about idea similar to one of @HQ6968. Here is list of my ideas/opinions. I've left questions that probably can be answered by somebody with more experience
The idea

Code can be grouped into folders (for the lack of better term I will literally call these "folders"), which have two parts: private and public. As an initial idea, let's say all the private code goes into private/ subfolder, and the rest of code is public:

src/
  foo/
    private/
      foo-private.ts
    foo-public.ts
    bar/
      foo-bar-public.ts
  bar
    bar.ts

So code in module bar.ts can import foo/foo-public.ts, foo/bar/foo-bar-public.ts, but not foo/private/foo-private.ts

Modules inside private/ folders should be excluded from auto complete, unless we are typing code inside their folder.

When typing inside bar/bar.ts, we will never see anything from foo/private/*
However, when typing inside foo/*, we will see everything from foo/private/*

Scope is given to the entire module, not to individual identifiers

Comparing to this proposal and @scope() suggested above, this approach makes everything within a module (i.e. file) public or private

In my opinion, giving scope to individual functions/variables is harder to reason about: to see the entire public API of a component, or entire private API within the component, you would have to browse each individual file, since each file might contain a mix of both
Is there ever a good case to mix public and private things in one module? Can we just split the code in multiple modules for such cases?
Dependencies between folders
It might be useful to declare dependencies between folders, instead of allowing every folder to import any other folder

In my opinion, this should be done explicitly at the top of the folder, so you can see what folders does the folder depend on, without having to browse its code

I like how TS Project references do that: each folder has tsconfig.json at its top, with references properties declaring dependencies on other folder. What if TS simply allowed imports from folders listed in references, but not from their private/ subfolders?
NPM dependencies are shared for all folders
I think it's convenient that all such folder would be able to import any NPM packages from the root "package.json". If you want different components of code not to share each other's NPM dependencies, you can use a monorepo (e.g. Rush.js)
Nested folders
What if a folder contains another folder? Can the parent folder access private/ of the child folder? Can the child access the private/ folder of parent? We will need to think about it
Child accessing things of parent
I like idea of #41316, which introduces protected access level - things in parent visible to child. We could have protected/ folder for it
Parent accessing things of child
@scope(../..) allows to declare function/variable accessible from parent folder inside a child folder. In my opinion, folders should be "encapsulated": they can access the surrounding code (e.g. protected things of parent), but the surrounding code should not be able to access internals of component inside
No barrel files

Comparing to packlets, we don't have to maintain index.ts files

IMHO, barrel files are tiresome to maintain. It might be a good idea to have all public API declared in one file, but is there practical problem of browsing all folders except private/ to understand the public API of a component?

Is there ever a good case to mix public and private things in one module?

Yes! This might not be the best example, but let's say we have a file defining a React Context for an encapsulated Component:
const context = createContext({});

export const ContextProvider = context.Provider;
// 👆 should only be accessible by the internal component files

export const useComponentContext = () => useContext(context);
// 👆 should be accessible by any component anywhere wrapped in the Component providing the context

but the surrounding code should not be able to access internals of component inside

Generally, that's true. That's why we're having this conversation, but there are exceptions. The most basic would be an index file re-exporting an export from a child folder.
utils
├── schema-utils/
│   ├── parsers.ts
│   └── validators.ts
└── index.ts

In this case, it should be possible for the index.ts file to import from schema-utils/validators.ts for example. I have a big project with a few of those exceptions even outside index files.

I would love a solution to this problem to be integrated into TS, but while we wait, here's a v2 of eslint-plugin-export-scope

This would be a great addition to TS. For me, it would allow me to better break it down my file structure ensuring that modules are self-contained. For e.g., in my React projects, I would have my folder structure like:
src/
  components/
    button/
      index.tsx // contains the TSX
      style.ts // styles are only exported internally, so no other modules outside button/ can access these styles
      validation.ts // same here, can't be access outside
      interface.ts // same here, can't be access outside

If we had something like the internal export that was presented here, this would ensure other components wouldn't use the styles or validation that are only for the button component. In that way I don't need to keep everything within the same file.
This would also allow exporting two modules with same name in different scopes.


prometheus and grafana dashboards implemented

Implemented Basic Prometheus Metrics and Grafana Dashboard using this Prometheus Crate #496

@irevoire Fixed the issues in the review.

Hey, I'm off today I'll look into it tomorrow!
But thanks a lot for your contribution it looks sick 🤘

Ok @pavo-tusker, so after chatting with the team we would really like to integrate your change but with the option to disable it.
Could you create an --enable-metrics-route cli option as @ManyTheFish said that disables both the metrics route and the hook in actix (=the wrap_fn).

Hey, just so you know, clippy was updated last weekend thus you'll need to rebase on main to make the CI pass again.

Hey, just so you know, clippy was updated last weekend thus you'll need to rebase on main to make the CI pass again.

Hey, @irevoire  Just added the " --enable-metrics-route " option as per the above discussions. By default, metrics will be disabled. passing "--enable-metrics-route" arg will enable /metrics route and Req/Res metrics. Removed wrap_fn and changed it as a conditional wrap middleware.
and what do I need to do on Clippy? can you give some more details about this?

bors merge

Thanks for your contribution! bors merge

Again there is an issue with clippy :( on new bors merged code.
Just fixed that too.

Hey @pavo-tusker, finally, we decided we wanted to take more time to refine the feature, thus for the next release (happening today), we're going to move the metrics behind a feature flag (which requires you to build your own meilisearch binary in order to use it).
For the next weeks, we’re going to heavily use it and see what other information we can provide, and if, in the end, we are satisfied with the outcome, we’ll probably make it official for the v1.0 (in 4 months) :tada:
We’ll see how it goes, but I can't promise anything.
I would love to hear your use case, though; why did you feel the need to implement this route, and is it ok for you to recompile meilisearch from scratch in the meantime?

Ease observability meilisearch/product#496

Sure, 🫡. I was exploring meilisearch for our needs, and observability is something I felt helped understand the queries we did, so I added the same and thought I would make a  pull request to contribute. Using as a binary now.
Would be great to see the merge when it happens, let me know if anything is needed from me.


reactivate Menza

they are uptodate again

as they are don't showing neither the price of the manu - neither the date of the upload/menus it would result a flaky output so the reactivation is discarded. i close the issue


Upgrade to pydantic v2

Is your feature request related to a problem? Please describe.
We would like to use in our project pydantic v2 but since we depend on fattureincloud-python-sdk we cannot use it
Describe the solution you'd like
Upgrade pydantic to v2 in fattureincloud-python-sdk

Hi @DanieleIsoni, as explained here we don't know when we will start using pydantic v2 as we use Openapi generator to generate our SDKs.
Thanks,
Emanuele.


remove the keyword `register' for C++17

WE should remove the keyword `register' since it is no longer supported in C++17.

Thanks!


Hs copy tweaks

This addresses a few smallish requests as documented here: https://trello.com/c/jXbmbWuf/177-add-copy-tweaks-from-first-round-of-usability-observations
Specifically:

It adds the "provider portal" subbrand to the header
It inserts a new page between the provider home and start of verification form to set expectations about what info to prepare and what to expect
It retitles the preview page
It amends the success message displayed on final summary page
I have moved the link to the old admin interface to a more intuititive position on the page and removed the title.

For step 2 please code review carefully. I set up a new URL path and pointed it to a new html template. No idea if I have done this in the best way but it's highly likely I won't have (stack overflow was involved, eek!). I'd be grateful for some reassurance I haven't damaged other URLs that I don't know about thanks.

On point 5 above, here are a couple of screenshots of what these changes make the provider portal home look like now.
"Clean" portal with no approved providers or submitted requests

Portal with a submitted request and an approved provider.


Prototyping logic to narrow the contagious window

This draft PR prototypes some logic we could use to narrow the window around when TEKs are uploaded. We would obviously also need a way of getting the date of symptom onset before this would work.

@smcmurtry going to close this for now and we can re-open or start a fresh PR once we're ready to go down this road.


With new release automation, container images workflow is no longer trigged by tag creation

After https://github.com/metal3-io/ip-address-manager/pull/734 was merged, release tags are created by this workflow. This means build-images-action is no longer triggering by tag creation, due Github side security precaution to avoid loops.
We need to fix it. Some ideas:

workflow_run - change the triggering mechanism, issue is how the tag data is passed
workflow_dispatch - maybe we change both a bit so uses: can be integrated as part of release

It does not seem that adding more permissions like actions: write etc helps.

Ping @mquhuy

/triage accepted
/kind feature

/kind bug

/reopen

/assign @mquhuy

workflow_run cannot use the data from triggering workflow by any dot syntax, see this Github documentation
It has example and states that it must use another step to upload an artifact with wanted data, and then the new workflow must load it. This issue is mentioned in the description. workflow_run is limited versus workflow_dispatch (more commony used) due security restrictions (dispatch actively calls a workflow, while run just self-triggers on another jobs).
So, we might want to consider adding the image build directly into release workflow as then it can use inputs directly (with the price of some duplication in image building code), or add the artifact upload/download to the image build, to pass the ref information.


Open useful links in a new tab (SCRD-8910)

Documentation on why the target attribute and why I'm using the two rel (relationship) values: https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a#attr-target


Support for creating a Release on a GitLab Project

Is there currently support for this:
https://gitlab.com/help/user/project/releases/index
Thanks

Hi, unfortunately there's no support for that. I would be happy to accept PR for this :)

@nmklotas just getting started playing with GitLab and working against the REST API.  If I can up and running with it, I will try to send some code back into this repository.


remove URLDecoder on the jar path

Thanks!

@alonbt version 4.1.1 released, will be in central shortly

Wrong Alon, but thanks!
On Thu, Apr 12, 2018, 08:46 Vilius Lukošius<EMAIL_ADDRESS>wrote:

@alonbt https://github.com/alonbt version 4.1.1 released, will be in
central shortly
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/wix/wix-embedded-mysql/pull/142#issuecomment-380685734,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ADPZF4HW-fPKqkshjkKrS_N6WslRRGJkks5tnuo5gaJpZM4TQNnM
.


Add Reddit endpoint to oembed_providers.py

Added endpoint for reddit comments to be embedded.

Thanks @lukeb0x  - merged in via 30a66638cbce93b7c806556fd7cce3587c93cb8b


assume chunked on zero-length stream

Assume chunked encoding if body stream length is nil.
Motivation:
Streams length parameter is optional to allow cases were stream length is not known in advance, but we do not support this in request validation. This PR aims to address that.
Modifications:
Modifies request validation to default to chunked encoding if body length is zero or to passed in content-length header
Adds a test
Result:
Closes #218

@artemredkin i’m not quite sure about the description/title of this PR. It shouldn’t do anything special for 0 lenghts. But yes, chunked encoding should always be used unless the user tells us a content length. If the user says length 0 though we should insert a content-length:0 header

Ah, its totally not about zero length, yes, only if length is not specified, fixed!


Typo break pre-commit hook

The pre-commit hook generated by precommit-hook using git-validate 2.0.4 is failing for me because the sed at line 47 has what seems to be an unexpected newline.  This got committed on 2015-08-19.  I assume that this is unintended.

I have the same issue (was writing an issue when I saw you post yours).
It seems to me the file by default contains a  carriage return (0x0D or \r or 13). When changing it to an ascii line feed (0x0A or \n or 10) it works for me, but that is something I need to do manually.
I'm running a OSX system which means it is BSD sed.

Just removing the  seems to also work... So if the line starts with sed 's/$//' | all is fine and dandy (I guess because there are no 0x0D in all code in our project)

On line 47 of bin/validate.sh we can see that the github code viewer seems to hiccup on that character as well

My colleague and I are both using Linux.

Yes, bin/validate.sh seems to be whether the hooks get created from.  Seems the newline got in recently, but there is also https://github.com/nlf/precommit-hook/issues/62 dated 3rd July

Here is the file when the sed part of line 47 was added.
From the git commit message by @nlf it seems this is a windows workaround. The sed just strips out windows-style newlines (which are represented as decimal 13 rather than 10).

My colleagues are all using Mac and it works - it was working fine for me earlier today as well, so don't really understand why this issue shows up now...

Maybe you ran npm install or npm update and they didn't?

http://unix.stackexchange.com/questions/170665/remove-a-carriage-return-with-sed

Also experiencing this issue. OSX.

i've unpublished 2.0.4 for now while i figure out what's going on here. am i correct in thinking that everyone was working ok in 2.0.3?

That is working again for me now.  Many thanks.  Does the pattern \r instead of ^M work?

Works for me as well today. Thank you @nlf :) :clap: :100:
Yesterday I tried replacing it with \r with success.

i just published 2.0.5, would one of you that was having issues mind testing and confirming if this is fixed?


Deno: serveStatic streams

Would be great to have an option for the Deno serveStatic middleware to use streams as the response.
https://deno.land/std@0.152.0/streams/mod.ts?s=readableStreamFromReader

Hi @deckchairlabs !
We can't handle this right away, but it's an interesting suggestion.
This is not just a Deno issue.
Hono does not support returning Readable Stream from the Context. If it's HTML, there is c.html(). If it's JSON, there is c.json(). But we don't have c.stream() method. This might be a good time to consider supporting Readble Stream. I'll try to make some plans to support Readable Stream and make the Stream option for Serve Static middleware.
Let's keep this issue open. Thank you!

Oh, I've just been using c.body() and that seems to be handling streams fine... But thank you regarding the serve static middleware, I've just copied and modified in my project source for now.

Ah, that's right, we can do it with c.body. But I wanted a specialized ReadableStream method. You can use c.body for now. Thanks!

Hi @deckchairlabs
Maybe we can do it with custom Middleware. If you have time, please try the following code and let me know the results.
app.get(
  '/static/*',
  async (c, next) => {
    await next()
    const { readable, writable } = new TransformStream()
    c.res.body?.pipeTo(writable)
    c.res = new Response(readable, c.res)
  },
  serveStatic({
    root: './',
  })
)


How to set vmi rx_queue_size/tx_queue_size

Description:
Kubevirt could set vmi interface rx_queue_size and tx_queue_size when enable “networkInterfaceMultiqueue”.
VMI yaml
apiVersion: kubevirt.io/v1
kind: VirtualMachineInstance
metadata:
  labels:
    special: vmi-multi-queue
  name: vmi-multi-queue
spec:
  domain:
    devices:
      networkInterfaceMultiqueue: true   # enable Multiqueue:
      disks:
      - disk:
          bus: virtio
        name: host-disk
      interfaces:
      - name: default
        bridge: {}
    machine:
      type: ""
    resources:
      requests:
        cpu: 36
        memory: 2048M
  networks:
  - name: default
    pod: {}
  terminationGracePeriodSeconds: 0
  volumes:
  - name: host-disk
    hostDisk:
      capacity: 4Gi
      path: '/root/kubevirt-vm/CentOS-7.8-x86_64-nocloudinit.raw'
      type: DiskOrCreate
status: {}

What you expected to happen:
I hope kubevirt could add two fields to set rx_queue_size and tx_queue_size，vmi interface xml like this:
<interface>
  ...
  <driver name='vhost' queues='4' rx_queue_size='512'  tx_queue_size='512'/>
  ...
</interface>

/cc @phoracek @EdDev
Would these tunings make sense?
@liyang516 Do you have any benchmark/data to see how it would affect performance?

These are very low level tunings.
We do not even tune the queues per interface, but these will require it for sure.
Also, the driver here is vhost, which we do not currently support.
The question in the end is similar to other similar requests: How many parameters are we willing to add to the spec, as there are a large number of them.
Maybe we need to consider arbitrary raw input for extensions. But this is per domain , not just networking.

This indeed seems a little loo low-level. I would recommend using a hook for such cases. See an example here: https://github.com/kubevirt/kubevirt/tree/main/cmd/example-cloudinit-hook-sidecar


Listen on all interfaces

https://github.com/foxglove/rtps/blob/51989299da53969b8eaeeb493c8141da175efee2/src/Participant.ts#L201
We currently only advertise a single network interface to the RTPS simple discovery process, so any remote hosts that can't reach us on the one advertised interface are out of luck. We are not doing any heuristics to select a "good" interface (this._addresses[0]) so if the first interface is not a useful one like a VPN link or a local virtual interface no one will be able to contact us.
The fix is to refactor this code to advertise all valid local interfaces, and open UDP listeners on every interface.

I have dealt with this issue in foxglove/studio#3207 too. However, I use Windows and found a way to fix it for now.
Tested User Hotfix
Disable all other network connections in Control Panel\Network and Internet\Network Connections except the one connected to the robot. Then restart Foxglove Studio and connect to the ROS_DOMAIN_ID.
Suggestion
You can also add an interface selector or a subnet/network prefix selector to Foxglove Studio. That should also work.

Suggestion You can also add an interface selector or a subnet/network prefix selector to Foxglove Studio. That should also work.

that would be nice, if it's in the same dialog where ros2 domain id is selected.

We have deprecated the direct ROS 2 connection in Foxglove Studio in favor of our new foxglove_bridge WebSocket server, which provides more stability and a better user experience. As such we are no longer actively maintaining this package. You can find instructions to use the WebSocket bridge here: https://foxglove.dev/docs/studio/connection/ros2#live-connection


Plugin for telegraf

As grafana and its acolytes are becoming more popular as a monitoring solution - would it be possible to get the current version of telegraf added as a plugin. I'm quite happy to configure this manually without any UI for the moment.

Should not that be possible with collectd?

Hi @fenice2,
We have a ticket here, enough responses now and build power to make this happen:
https://github.com/opnsense/core/issues/1626
I'm closing this duplicate, as we are talking about the package, not the plugin as per your request.
The package will be available with 17.7.3.
Chances are good that someone will start a plugin in the mid-term. :)
Cheers,
Franco


Support Arcgis Map service

There are some problems
https://community.cesium.com/t/arcgis-map-service/14617

Thanks for the PR @zrkcode!
There was a bug in some of the coordinate computations, and I committed a fix. It seems to work well now, but I haven't tested it extensively.

I'll do a more thorough review and get this merged as soon as I can, but it might be a week or two because I want to focus on some other raster overlay related change we have in flight first. Hopefully the change above is enough to get you going, anyway.

Thanks again for your contribution @zrkcode!
No one has commented on this pull request in 30 days. Maintainers, can you review, merge or close to keep things tidy?
I'm going to re-bump this in 30 days. If you'd like me to stop, just comment with @cesium-concierge stop. If you want me to start again, just delete the comment.

Thanks again for your contribution @zrkcode!
No one has commented on this pull request in 30 days. Maintainers, can you review, merge or close to keep things tidy?
I'm going to re-bump this in 30 days. If you'd like me to stop, just comment with @cesium-concierge stop. If you want me to start again, just delete the comment.

Thanks again for your contribution @zrkcode!
No one has commented on this pull request in 30 days. Maintainers, can you review, merge or close to keep things tidy?
I'm going to re-bump this in 30 days. If you'd like me to stop, just comment with @cesium-concierge stop. If you want me to start again, just delete the comment.

Thanks again for your contribution @zrkcode!
No one has commented on this pull request in 30 days. Maintainers, can you review, merge or close to keep things tidy?
I'm going to re-bump this in 30 days. If you'd like me to stop, just comment with @cesium-concierge stop. If you want me to start again, just delete the comment.

Thanks again for your contribution @zrkcode!
No one has commented on this pull request in 30 days. Maintainers, can you review, merge or close to keep things tidy?
I'm going to re-bump this in 30 days. If you'd like me to stop, just comment with @cesium-concierge stop. If you want me to start again, just delete the comment.

Thanks again for your contribution @zrkcode!
No one has commented on this pull request in 30 days. Maintainers, can you review, merge or close to keep things tidy?
I'm going to re-bump this in 30 days. If you'd like me to stop, just comment with @cesium-concierge stop. If you want me to start again, just delete the comment.

Thanks again for your contribution @zrkcode!
No one has commented on this pull request in 30 days. Maintainers, can you review, merge or close to keep things tidy?
I'm going to re-bump this in 30 days. If you'd like me to stop, just comment with @cesium-concierge stop. If you want me to start again, just delete the comment.

Thanks again for your contribution @zrkcode!
No one has commented on this pull request in 30 days. Maintainers, can you review, merge or close to keep things tidy?
I'm going to re-bump this in 30 days. If you'd like me to stop, just comment with @cesium-concierge stop. If you want me to start again, just delete the comment.

Thanks again for your contribution @zrkcode!
No one has commented on this pull request in 30 days. Maintainers, can you review, merge or close to keep things tidy?
I'm going to re-bump this in 30 days. If you'd like me to stop, just comment with @cesium-concierge stop. If you want me to start again, just delete the comment.

Thanks again for your contribution @zrkcode!
No one has commented on this pull request in 30 days. Maintainers, can you review, merge or close to keep things tidy?
I'm going to re-bump this in 30 days. If you'd like me to stop, just comment with @cesium-concierge stop. If you want me to start again, just delete the comment.

Thanks again for your contribution @zrkcode!
No one has commented on this pull request in 30 days. Maintainers, can you review, merge or close to keep things tidy?
I'm going to re-bump this in 30 days. If you'd like me to stop, just comment with @cesium-concierge stop. If you want me to start again, just delete the comment.

anything else？

Thanks again for your contribution @zrkcode!
No one has commented on this pull request in 30 days. Maintainers, can you review, merge or close to keep things tidy?
I'm going to re-bump this in 30 days. If you'd like me to stop, just comment with @cesium-concierge stop. If you want me to start again, just delete the comment.

Thanks again for your contribution @zrkcode!
No one has commented on this pull request in 30 days. Maintainers, can you review, merge or close to keep things tidy?
I'm going to re-bump this in 30 days. If you'd like me to stop, just comment with @cesium-concierge stop. If you want me to start again, just delete the comment.

Thanks again for your contribution @zrkcode!
No one has commented on this pull request in 30 days. Maintainers, can you review, merge or close to keep things tidy?
I'm going to re-bump this in 30 days. If you'd like me to stop, just comment with @cesium-concierge stop. If you want me to start again, just delete the comment.

Thanks again for your contribution @zrkcode!
No one has commented on this pull request in 30 days. Maintainers, can you review, merge or close to keep things tidy?
I'm going to re-bump this in 30 days. If you'd like me to stop, just comment with @cesium-concierge stop. If you want me to start again, just delete the comment.

Thanks again for your contribution @zrkcode!
No one has commented on this pull request in 30 days. Maintainers, can you review, merge or close to keep things tidy?
I'm going to re-bump this in 30 days. If you'd like me to stop, just comment with @cesium-concierge stop. If you want me to start again, just delete the comment.


Homebridge Not Starting

my homebridge wont start. this is what happens. Please help, no idea how to make this work anymore.
pi@raspberrypi:~ $ homebridge
*** WARNING *** The program 'node' uses the Apple Bonjour compatibility layer of Avahi.
*** WARNING *** Please fix your application to use the native API of Avahi!
*** WARNING *** For more information see http://0pointer.de/avahi-compat?s=libdns_sd&e=node
*** WARNING *** The program 'node' called 'DNSServiceRegister()' which is not supported (or only supported partially) in the Apple Bonjour compatibility layer of Avahi.
*** WARNING *** Please fix your application to use the native API of Avahi!
*** WARNING *** For more information see http://0pointer.de/avahi-compat?s=libdns_sd&e=node&f=DNSServiceRegister
[8/10/2017, 9:14:13 PM] Loaded plugin: homebridge-philipshue
[8/10/2017, 9:14:13 PM] Registering platform 'homebridge-philipshue.PhilipsHue'
[8/10/2017, 9:14:13 PM] ---
[8/10/2017, 9:14:14 PM] Loaded plugin: homebridge-simplisafe-security-system
[8/10/2017, 9:14:14 PM] Registering accessory 'homebridge-simplisafe.Homebridge-SimpliSafe'
[8/10/2017, 9:14:14 PM] ---
[8/10/2017, 9:14:14 PM] Loaded config.json with 1 accessories and 1 platforms.
[8/10/2017, 9:14:14 PM] ---
[8/10/2017, 9:14:14 PM] Loading 1 platforms...
[8/10/2017, 9:14:14 PM] [Philips Hue] Initializing PhilipsHue platform...
[8/10/2017, 9:14:14 PM] [Philips Hue] PhilipsHue Platform Plugin Version 0.0.3
[8/10/2017, 9:14:14 PM] [Philips Hue] Fetching Philips Hue lights...
[8/10/2017, 9:14:14 PM] Loading 1 accessories...
[8/10/2017, 9:14:14 PM] [Alarm System] Initializing Homebridge-SimpliSafe accessory...
pi@raspberrypi:~ $

I'm having the same problem, modifying the mans module did not help.

it's the Phillips hue plugin. Use the other Phillips hue plugin and it all ends up working. Let me know if you want links.


Adding client's search component class to exclude from getting it clicked on keydown

Added client's search component class to exclude from getting it clicked on keydown

Resolves: MWPW-161627
Test URLs:

Before: https://main--milo--adobecom.hlx.page/?martech=off
After: https://search-fix--milo--adobecom.hlx.page/?martech=off

Qa: https://www.stage.adobe.com/home?navbranch=search-fix

Validation done on the PR in below url
https://www.stage.adobe.com/home?navbranch=search-fix

validation done in different browsers and device details in https://jira.corp.adobe.com/browse/MWPW-161627


Deploy to IBM Cloud

to run locally: honcho start
to push to ibm cloud manually: ic cf push (requires you to be logged in and the correct org targeted first)

Codecov Report

Merging #118 (0f86a96) into main (784c3e7) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main     #118   +/-   ##
=======================================
  Coverage   98.94%   98.94%
=======================================
  Files           7        7
  Lines         380      380
=======================================
  Hits          376      376
  Misses          4        4

Continue to review full report at Codecov.

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


User not associated with Org after Sign-up

I just migrated the database and am running the system using the codebase in DMPRoadmap/roadmap development.
I created an account for myself and selected DCC from the organisation dropdown. When I logged in I had no org affiliation and noticed that User.org_id was empty in the DB.

Recreated error. Applied fix. Verfified fixed. looks good.

Working as expected now.


Bump singnal service timeout to 15 seconds

High Level Description
Bumps signal service requests timeout to 15 seconds to compensate for services that might be requesting data from API's not native to a DC/OS cluster (in example, Cosmos reaches out to S3, which is prone to variable lag).
Related Issues
https://jira.mesosphere.com/browse/DCOS-12267
Checklist for all PR's

[ ] Included a test which will fail if code is reverted but test is not. If there is no test please explain here:
[x] Read the DC/OS contributing guidelines
[x] Followed relevant code rules Rules for Packages and Systemd

Checklist for component/package updates:
If you are changing components or packages in DC/OS (e.g. you are bumping the sha or ref of anything underneath packages), then in addition to the above please also include:

[ ] Change log from the last version integrated (this should be a link to commits for easy verification and review): example
[ ] Test Results: [link to CI job test results for component]
[x] Code Coverage (if available):

➜  dcos-signal malnick/DCOS-12267 ✓ make test
+test
go test github.com/dcos/dcos-signal github.com/dcos/dcos-signal/config github.com/dcos/dcos-signal/signal -v -cover
?       github.com/dcos/dcos-signal     [no test files]
time="2017-02-14T17:13:30-08:00" level=warning msg="Service account not detected, continuing with out secure requests."
=== RUN   TestDefaultConfig
--- PASS: TestDefaultConfig (0.00s)
=== RUN   TestFlagParsing
--- PASS: TestFlagParsing (0.00s)
=== RUN   TestGetClusterID
--- PASS: TestGetClusterID (0.00s)
=== RUN   TestGetExternalConfig
--- PASS: TestGetExternalConfig (0.00s)
=== RUN   TestTryLoadingCert
--- PASS: TestTryLoadingCert (0.00s)
PASS
coverage: 48.0% of statements
ok      github.com/dcos/dcos-signal/config      0.005s  coverage: 48.0% of statements
time="2017-02-14T17:13:31-08:00" level=warning msg="Service account not detected, continuing with out secure requests."
=== RUN   TestCosmosTrack
time="2017-02-14T17:13:31-08:00" level=warning msg="REPORT:\n&{Packages:[{AppID:fooPackage}]}"
--- PASS: TestCosmosTrack (0.00s)
=== RUN   TestDiagnosticsTrack
--- PASS: TestDiagnosticsTrack (0.00s)
=== RUN   TestPullHealthReport
--- PASS: TestPullHealthReport (0.00s)
=== RUN   TestMakeReporters
--- PASS: TestMakeReporters (0.00s)
=== RUN   TestCreateUnitTotalKey
--- PASS: TestCreateUnitTotalKey (0.00s)
=== RUN   TestCreateUnitUnhealthyKey
--- PASS: TestCreateUnitUnhealthyKey (0.00s)
=== RUN   TestCreateSegmentClient
--- PASS: TestCreateSegmentClient (0.00s)
=== RUN   TestExecuteTester
{
    "foo": {
        "event": ""
    }
}--- PASS: TestExecuteTester (0.00s)
PASS
coverage: 37.8% of statements
ok      github.com/dcos/dcos-signal/signal      0.005s  coverage: 37.8% of statements

PLEASE FILL IN THE TEMPLATE ABOVE / DO NOT REMOVE ANY SECTIONS ABOVE THIS LINE
Instructions and Review Process
What is the review process and when will my changes land?
All PRs require 2 approvals using github's pull request reviews.
Reviewers should be:

Developers who understand the code being modified.
Developers responsible for code that interacts with or depends on the code being modified.

It is best to proactively ask for 2 reviews by @mentioning the candidate reviewers in the PR comments area. The responsibility is on the developer submitting the PR to follow-up with reviewers and make sure a PR is reviewed in a timely manner. Once a PR has 2 ship-it's, no red reviews, and all tests are green it will be included in the next train.

Test failures due to volume test, unrelated to changes. Re-running.

@mesosphere-mergebot bump-ee

@seb @gpaul @jsancio This is looking solid, ready for review.

@malnick for the description, here you go:
https://github.com/dcos/dcos-signal/compare/40a23b4dcba6b3053379235a96bc3ac53996e146...5f64585fe945480aa1b3c363fa7e5d6c0f9878d7

Here's a link to the CI results:
https://jenkins.mesosphere.com/service/jenkins/job/public-dcos-signal-service-pulls/121/console


Validate schema name in show tables

Please add a test for this.

Added unit tests.

Looks like there are test failures

@cberner updated the tests.

Merged. Thanks!


Request for the 17-Places dataset

Hi, @MubarizZaffar @oravus ,thank you very much for your work.But I have a problem,I can't find the dataset “17-Places”at present. The dataset in the link(https://www.raghavendersahdev.com/place-recognition.html)is too large, so I don't know the version of  “17-Places” used in this paper.Could you please share it with me？Or is there anything you can do to help me?
Thanks & Best Regards!

Hi @MAX-OTW, you can access this dataset in VPR-Bench format here.

Hi @MAX-OTW, you can access this dataset in VPR-Bench format here (~62 MB zip).

Thanks a lot~


[iOS] Archive didn't use CFBundleShortVersionString and CFBundleVersion

Expected results:
An archive with the version 1.5.84 (489)
Actual results:
An archive with the version 0.7.2 (76)
When I want to generate my archive in Xcode. The version in the 'pubspec.yaml' is not the same as the archive version.
pubspec.yaml version :

Info.plist :

I also tried to use these values. But same issue happen.

Xcode build version still blocked with the old values

Same for the User-Defined values :

Product > Archive, produce an archive with the wrong version :

Before generated the archive I tried all this steps together :

Xcode clean
Xcode remove derived data
Delete Runner.xcworkspace / Pods folder / Podfile.lock
Android Studio > Invalidate caches + Clear file and history
cd ios & pod install

The result is that the build version / number is never updated.
The only way to update the archive version is to directly update the build version / number inside Xcode > General.
[✓] Flutter (Channel stable, 2.10.4, on macOS 12.3.1 21E258 darwin-arm, locale en-GB)
    • Flutter version 2.10.4 at /Users/damienlemenager/development/flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision c860cba910 (4 weeks ago), 2022-03-25 00:23:12 -0500
    • Engine revision 57d3bac3dd
    • Dart version 2.16.2
    • DevTools version 2.9.2

[✓] Android toolchain - develop for Android devices (Android SDK version 31.0.0)
    • Android SDK at /Users/damienlemenager/Library/Android/sdk
    • Platform android-31, build-tools 31.0.0
    • Java binary at: /Applications/Android Studio.app/Contents/jre/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 11.0.11+0-b60-7772763)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 13.3)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • CocoaPods version 1.11.2

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 2021.1)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 11.0.11+0-b60-7772763)

[✓] Connected device (2 available)
    • Mobile’s iPhone (mobile) • 00008101-00067150227A001E • ios            • iOS 15.4.1 19E258
    • Chrome (web)             • chrome                    • web-javascript • Google Chrome 100.0.4896.127

[✓] HTTP Host Availability
    • All required HTTP hosts are available

• No issues found!

Hi @treacks5, I tried to build the newly created ios app and I do see the same version as in pubspec.yaml. When you do the following

change the version in pubspec.yaml
Build the app
open in  xcode open ios/Runner.xcworkspace
Do you see the same version in xcode as in pubspec.yaml?


ReferenceError: bugsnagClient is not defined - how to access the bugsnagClient

Hi,
I have a problem with reporting a handled error. I initialize the Bugsnag in the following way:
import bugsnag from 'bugsnag-js'
const bugsnagClient = bugsnag('key-here')
import Vue from 'vue'
import bugsnagVue from'bugsnag-vue'
bugsnagClient.use(bugsnagVue(Vue))

This seems to work fine. Now I want to report a handled error in a Vuex store:
    async fetchAccountValue({commit}) {
        try {
            const {data} = await axios.get('/api/v1/user/account-value')

            commit(types.FETCH_ACCOUNT_VALUE_SUCCESS, {result: data.data})
        } catch (error) {
            commit(types.FETCH_ACCOUNT_VALUE_FAILURE)

            bugsnagClient.notify(error)
        }
    }

If the request fails I get the following console error: ReferenceError: bugsnagClient is not defined
How can I access the bugsnagClient in another js file. Normally I would import it but it would require the api key again I assume? I could also make the object global by adding it to the window object but I'd rather not.

I think I found the answer here: https://github.com/bugsnag/bugsnag-vue/issues/2

Hi @marijnhurkens, typically lots of people assign it to window but if you don't want to do that, you can stick the initialization in its own file and include that everywhere:
bugsnag.js
import bugsnag from 'bugsnag-js'
const bugsnagClient = bugsnag('key-here')
export default bugsnagClient

then in your other files you can do…
vue initialization
import bugsnagClient from './bugsnag'
import bugsnagVue from 'bugsnag-vue'
import Vue from 'vue'
bugsnagClient.use(bugsnagVue(Vue))

vuex stores
import bugsnagClient from './bugsnag'

// ...

    async fetchAccountValue({commit}) {
        try {
            const {data} = await axios.get('/api/v1/user/account-value')

            commit(types.FETCH_ACCOUNT_VALUE_SUCCESS, {result: data.data})
        } catch (error) {
            commit(types.FETCH_ACCOUNT_VALUE_FAILURE)

            bugsnagClient.notify(error)
        }
    }


download should have a checkbox to queue more than one item to download

It would be a great feature that to allow us to select all the highlights or full videos and have them all queued at once instead of clicking download for each video.
When you find that a file already exists, it could just skip that file, or overwrite.
Great job so far.. Thank you for the hard work..!!

Part of #46


[Feature] Support experimental Next.js app dir and server components

🚀 Feature Proposal
I hope you don't mind me prematurely creating this issue 🙇 . Just wanted to start a discussion around the new Next.js App dir and potential support with i18next. This doesn't have to be built anytime soon but could be a chance to crowd-source information of potential approaches to adding support.
Motivation
Next.js v13+ includes an experimental app directory that aligns with the future of the React framework.
https://nextjs.org/blog/next-13#new-app-directory-beta
Example
To be revisited once understanding of what is needed

https://github.com/i18next/next-i18next/discussions/1993#discussioncomment-4337519

https://locize.com/blog/next-13-app-dir-i18n/


Scaling artifacts in Far Manager and Midnight commander

Environment
Windows build number: Microsoft Windows NT 10.0.19041.0
Windows Terminal version: microsoft-windows-terminal 0.10.781.0

Any other software?
Chocolatey
Far

Steps to reproduce

Install Far Manager. (e.g. with Chocolatey in an admin-enabled pwsh choco install far).
Change your Display scaling to 125%.  (Settings -> System -> Display -> Scale and layout -> 'Change the size of text...')
Open Windows terminal. Open a Cmd, PowerShell or PowerShell Core tab.
Start Far Manager. Type far.

Expected behavior
No unwanted artifacts due to scaling.
Actual behavior
Unwanted artifacts as black horizontal lines when scaling other than 100%, 200%. (c.f. PNG screenshot)
Note
PowerShell and PowerShell Core in their own windows behave correctly with all scaling settings(c.f. PNG screenshot)
Issue pertains to midnight commander in WSL instances (sudo apt install mc) (c.f. PNG screenshot)

This is probably #3626, which has recently has a PR merged, so it should hopefully be fixed soon.

This definitely is a /dupe of #3626! Thanks, as always, James.


Issue: Error while listing commits after authentication

Description
Listing commits from a section after a successful authentication results in an error: Error while listing commits.
To Reproduce
Steps to reproduce the behavior:

Go to https://azdocswatch.vupti.me
Login
Go to https://azdocswatch.vupti.me/articles/active-directory-b2c
See error

In logs:
2022-11-03T10:03:58.818046513Z: [ERROR]  2022-11-03 10:03:58 63eb4a256818 app[80] ERROR '>' not supported between instances of 'int' and 'str'
2022-11-03T10:03:58.836790358Z: [INFO]  <IP_ADDRESS>:55505 - - [03/Nov/2022:10:03:58 +0000] "GET /articles/active-directory-b2c HTTP/1.1" 500 27 "https://azdocswatch.vupti.me/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:105.0) Gecko/20100101 Firefox/105.0"

Expected behavior
List of last commits.
Screenshots
n/a
Additional context
n/A

Not reproduced on dev env...

Fixed:


Ds fix GitHub issue 7

This PR cleans up a load of legacy code and fixes a few crashes. Though, not all crashes are removed, but I didn't want to make the PR even bigger.


fix list of published files

The data folder was missing, I also reordered everything to match the usual file listing order.
Removed types.d.ts and router as they don't exist.

Thanks!


ctl:ruleRemoveTargetById with range don't work with ARGS

Describe the bug
When i put a rule with ctl:ruleRemoveTargetById range, the rules still blocking for the ARGS.
Steps to reproduce
With a rule
SecRule REQUEST_URI "URL"
"id:2009,
nolog,
phase:1,
pass,
ctl:ruleRemoveTargetById=941100-941950;ARGS:testwaf"
Make a request with a param called testwaf with this value:
%3Cdiv%3E%3Cp%3E%3Cb%3E%3Cfont%2Bcolor%3D%22%23ffefc6%22%3Eerewrewrrwerwerwer%3C%2Ffont%3E%3C%2Fb%3E%3C%2Fp%3E%3C%2Fdiv%3E%3Cscript%3Ealert%28%27aaaa%27%29%3C%2Fscript%3E
Expected behaviour
Can't block the request
Actual behaviour
It is blocking the request
Additional context
The ctl:ruleRemoveById have this same behavior, but i don't know if it accept a range of rules.
Your Environment

CRS version (e.g., v3.2.0): v3.3.0
Paranoia level setting: default
ModSecurity version (e.g., 2.9.3): latest
Web Server and version (e.g., apache 2.4.41):  2.4
Operating System and version: Container 4.9.125-linuxkit

Hi @braianxde! Can you add which rules are matching?

Hi @braianxde! Can you add which rules are matching?

941100
941110
941160
949110

Hello @braianxde, your rule exclusion is supposed to be placed before the CRS include. Could you please check and confirm?

Hey @dune73
i have a main.conf, and this is the order of includes:
Include /usr/local/se/apps/nginx/modsec/modsecurity.conf
Include /usr/local/se/apps/nginx/modsec/owasp-modsecurity-crs/crs-setup.conf
Include /usr/local/se/waf_rules/waf_whitelist.conf    <- Here is my rule
Include /usr/local/se/apps/nginx/modsec/owasp-modsecurity-crs/rules/*.conf  <-default rules

@braianxde Just to confirm: are you POSTing that, right? Or using GET?

Yeah, i'm using post!

Ah, there is your problem then.
Please change the phase in your rule to phase:2. Otherwise, args in the message body are not checked.

Another clue you should looks in your logs is the matching phase: there it should probably say phase:2.

Ok! thanks for the explanation!
I changed the phase, and reload the nginx and the requisition still being blocking, but now it was blocked for only 3 rules:
941110
941160
949110

Ok, next question: I don't see anything in the docs saying that ctl:ruleRemoveTargetById can do ranges. Are you sure you are applying it properly?
You can create a list using ctl:ruleRemoveTargetById=941110;ARGS:testwaf,ctl:ruleRemoveTargetById=941160;ARGS:testwaf. Don't remove the 949110, because that's the evaluation rule at the end.

i found this issue solved and i think that with it in code, the ranges was to be accepted.
https://github.com/SpiderLabs/ModSecurity/issues/2110

Thanks for the link. So it should be supported. If it keeps failing, can you paste your whole log sanitized for this example?

 Matched "Operator Rx' with parameter (?i)


Duplicate entry '0' for key 'PRIMARY'

when i enter this

this is my database

Hi @alifjkhan
This doesn't look like Flutter
This platform is not meant for assistance on personal code. Please see https://flutter.dev/community for resources and asking questions like this, you may also get some help if you post it on Stack Overflow.
Closing, as this isn't an issue with Flutter itself,
if you disagree please write in the comments and I will reopen it
Thank you


Validate that stances of fybrik-operator-leader-election ConfigMap are removed when we remove the Fybrik deployment

when Fybrik is deployed, an instance of fybrik-operator-leader-election ConfigMap is dynamically created.
Therefore, helm doesn't remove it when it removes Fybrik.
We need to guarantee that when Fybrik is uninstalled, the CM is also deleted.

actually, in addition to the ConfigMap Fybrik's leader election process leaves a Lease too
kubectl get lease fybrik-operator-leader-election -n fybrik-system -oyaml apiVersion: coordination.k8s.io/v1 kind: Lease metadata:   creationTimestamp: "2023-02-08T14:38:41Z"   name: fybrik-operator-leader-election   namespace: fybrik-system   resourceVersion: "2799219"   uid: bc81cae9-6812-491f-8436-6b423de352cb spec:   acquireTime: "2023-02-08T14:38:41.000000Z"   holderIdentity: manager-74fc49c66b-9v558_9eae3a9f-8513-4ffd-be19-78aa5a7a1afa   leaseDurationSeconds: 15   leaseTransitions: 0   renewTime: "2023-02-16T19:21:32.650508Z"

Both ConfigMap and Lease are created by leader election mechanism of Kubernetes controller runtime.
Controller Runtime v0.7-v0.11 used LeaderElectionResourceLock of type  configmapleases which created both ConfigMap and Lease.
Fybrik v1.2.1 used sigs.k8s.io/controller-runtime v0.11.2 so we could observe the ConfigMap and Lease.
The Fybrik master branch was upgraded to use sigs.k8s.io/controller-runtime v0.13.1, and now the ConfigMap is not created.
In order to remove orphan Leases, we will add a post-delete helm hook. The option was validated with the sig controller-runtime group.


Cow: Watch leanbkk.net

Cow requests the watch of the watch_keyword leanbkk\.net. See the MS search here and the Stack Exchange search in text, in URLs, and in code.

Approved by Spevacus in Charcoal HQ


Add comprehensive Storage Options for SolrCloud data.

Issue number of the reported bug or feature request: Resolves #103
Describe your changes
This PR adds a section for specifying more in-depth storage options for Solr Cloud data.
This PR also adds the ability to delete unused PVCs on deletion of the SolrCloud, or when scaling down the number of solr nodes.
Testing performed
Unit tests still need to be added. As well as comprehensive manual testing.
Additional context
Also auto-migration of old podOptions to the new location has been added.
The new storage options look like:
type SolrDataStorageOptions struct {
	// StorageType determines the type of storage that will be used for each Solr Node (ephemeral or persistent)
	// Defaults to Ephemeral
	// +optional
	StorageType StorageType `json:"type,omitempty"`

	// PersistentStorage is the specification for how the persistent Solr data storage should be configured.
	// +optional
	PersistentStorage *SolrPersistentDataStorageOptions `json:"persistence,omitempty"`

	// EphemeralStorage is the specification for how the ephemeral Solr data storage should be configured.
	// +optional
	EphemeralStorage *SolrEphemeralDataStorageOptions `json:"ephemeral,omitempty"`

	// Required for backups & restores to be enabled.
	// This is a volumeSource for a volume that will be mounted to all solrNodes to store backups and load restores.
	// The data within the volume will be namespaces for this instance, so feel free to use the same volume for multiple clouds.
	// Since the volume will be mounted to all solrNodes, it must be able to be written from multiple pods.
	// If a PVC reference is given, the PVC must have `accessModes: - ReadWriteMany`.
	// Other options are to use a NFS volume.
	// +optional
	BackupRestoreVolume *corev1.VolumeSource `json:"backupRestoreVolume,omitempty"`
}

type StorageType string
const (
	// Data will be stored in ephemeral EmptyDir Volumes
	StorageTypeEphemeral StorageType = "Ephemeral"

	// Data will be stored in Persistent Volumes.
	StorageTypePersistent StorageType = "Persistent"
)

type SolrPersistentDataStorageOptions struct {
	// VolumeReclaimPolicy determines how the Solr Cloud's PVCs will be treated after the cloud is deleted.
	//   - Retain: This is the default Kubernetes policy, where PVCs created for StatefulSets are not deleted when the StatefulSet is deleted.
	//   - Delete: The PVCs will be deleted by the Solr Operator after the SolrCloud object is deleted.
	// The default value is Retain, so no data will be deleted unless explicitly configured.
	// +optional
	VolumeReclaimPolicy VolumeReclaimPolicy `json:"reclaimPolicy,omitempty"`

	// PersistentVolumeClaim is the PVC object for the solr node to store its data.
	// Within metadata, the Name, Labels and Annotations are able to be specified, but defaults will be provided if necessary.
	// The entire Spec is customizable, however there will be defaults provided if necessary.
	// This field is optional. If no PVC spec is provided, then a default will be provided.
	// +optional
	PersistentVolumeClaim corev1.PersistentVolumeClaim `json:"pvc,omitempty"`
}

type VolumeReclaimPolicy string
const (
	// All pod PVCs are retained after the SolrCloud is deleted.
	VolumeReclaimPolicyRetain VolumeReclaimPolicy = "Retain"

	// All pod PVCs are deleted after the SolrCloud is deleted.
	VolumeReclaimPolicyDelete VolumeReclaimPolicy = "Delete"
)

type SolrEphemeralDataStorageOptions struct {
	//EmptyDirVolumeSource is an optional config for the emptydir volume that will store Solr data.
	// +optional
	EmptyDir corev1.EmptyDirVolumeSource `json:"emptyDir,omitempty"`
}

A test with some checks to start...
--- a/controllers/solrcloud_controller_test.go
+++ b/controllers/solrcloud_controller_test.go
@@ -17,9 +17,10 @@ limitations under the License.
 package controllers

 import (
+	"testing"
+
 	zookeeperv1beta1 "github.com/pravega/zookeeper-operator/pkg/apis/zookeeper/v1beta1"
 	corev1 "k8s.io/api/core/v1"
-	"testing"

 	"github.com/bloomberg/solr-operator/controllers/util"
 	"github.com/stretchr/testify/assert"
@@ -144,6 +145,84 @@ func TestCloudReconcile(t *testing.T) {
 	expectNoIngress(g, cloudIKey)
 }

+func TestStorageVolumes(t *testing.T) {
+	SetIngressBaseUrl("")
+	UseZkCRD(true)
+	g := gomega.NewGomegaWithT(t)
+
+	instance := &solr.SolrCloud{
+		ObjectMeta: metav1.ObjectMeta{Name: expectedCloudRequest.Name, Namespace: expectedCloudRequest.Namespace},
+		Spec: solr.SolrCloudSpec{
+			ZookeeperRef: &solr.ZookeeperRef{
+				ConnectionInfo: &solr.ZookeeperConnectionInfo{
+					InternalConnectionString: "host:7271",
+				},
+			},
+			SolrJavaMem:  "-Xmx4G",
+			SolrOpts:     "extra-opts",
+			SolrLogLevel: "DEBUG",
+			StorageOptions: solr.SolrDataStorageOptions{
+				StorageType: solr.StorageTypePersistent,
+				PersistentStorage: &solr.SolrPersistentDataStorageOptions{
+					VolumeReclaimPolicy: "Delete",
+					PersistentVolumeClaim: corev1.PersistentVolumeClaim{
+						ObjectMeta: metav1.ObjectMeta{
+							Name:   "data",
+							Labels: map[string]string{"base": "here"},
+						},
+					},
+				},
+			},
+			CustomSolrKubeOptions: solr.CustomSolrKubeOptions{
+				PodOptions: &solr.PodOptions{
+					EnvVariables:       extraVars,
+					PodSecurityContext: &podSecurityContext,
+					Volumes:            extraVolumes,
+					Affinity:           affinity,
+					Resources:          resources,
+				},
+			},
+		},
+	}
+
+	// Setup the Manager and Controller.  Wrap the Controller Reconcile function so it writes each request to a
+	// channel when it is finished.
+	mgr, err := manager.New(testCfg, manager.Options{})
+	g.Expect(err).NotTo(gomega.HaveOccurred())
+	testClient = mgr.GetClient()
+
+	solrCloudReconciler := &SolrCloudReconciler{
+		Client: testClient,
+		Log:    ctrl.Log.WithName("controllers").WithName("SolrCloud"),
+	}
+	newRec, requests := SetupTestReconcile(solrCloudReconciler)
+	g.Expect(solrCloudReconciler.SetupWithManagerAndReconciler(mgr, newRec)).NotTo(gomega.HaveOccurred())
+
+	stopMgr, mgrStopped := StartTestManager(mgr, g)
+
+	defer func() {
+		close(stopMgr)
+		mgrStopped.Wait()
+	}()
+
+	cleanupTest(g, instance.Namespace)
+
+	// Create the SolrCloud object and expect the Reconcile and StatefulSet to be created
+	err = testClient.Create(context.TODO(), instance)
+	g.Expect(err).NotTo(gomega.HaveOccurred())
+	defer testClient.Delete(context.TODO(), instance)
+	g.Eventually(requests, timeout).Should(gomega.Receive(gomega.Equal(expectedCloudRequest)))
+
+	// Check the statefulSet
+	statefulSet := expectStatefulSet(t, g, requests, expectedCloudRequest, cloudSsKey)
+
+	assert.Equal(t, 2, len(statefulSet.Spec.Template.Spec.Volumes), "Pod has wrong number of volumes")
+	assert.Equal(t, instance.Spec.StorageOptions.PersistentStorage.PersistentVolumeClaim.Name, statefulSet.Spec.VolumeClaimTemplates[0].Name, "Data volume claim doesn't exist")
+	assert.Equal(t, "solr-cloud", statefulSet.Spec.VolumeClaimTemplates[0].Labels[util.SolrPVCTechnologyLabel], "Technology label doesn't match")
+	assert.Equal(t, "data", statefulSet.Spec.VolumeClaimTemplates[0].Labels[util.SolrPVCStorageLabel], "Storage label doesn't match")
+	assert.Equal(t, "foo-clo", statefulSet.Spec.VolumeClaimTemplates[0].Labels[util.SolrPVCInstanceLabel], "Instance label doesn't match")
+}
+
 func TestCustomKubeOptionsCloudReconcile(t *testing.T) {
 	ingressBaseDomain := "ing.base.domain"
 	SetIngressBaseUrl(ingressBaseDomain)

Was looking to see how I can assert the ReclaimPolicy is set to "Delete". Will try to figure that test out next

Was looking to see how I can assert the ReclaimPolicy is set to "Delete". Will try to figure that test out next

Oh right, persistentVolumeReclaimPolicy is on the PV not the PVC.

Added your first test and it ran splendidly! I'll try to add some more to try to take some edge cases into account.

@HoustonPutman we have a use case for having multiple SolrClouds use the same backupRestore path. This would help us restore data from 1 solrcloud to another without having to manipulate volume mounts and cause rolling updates.
Would you consider perhaps extending an option to override the default of the cloud name as part of the path and move to a user provided variable for this? Default to original behavior if none provided.
Current default:
https://github.com/bloomberg/solr-operator/blob/0bcff501c4e931540a2633732541837dec8463b2/controllers/util/backup_util.go#L44
Perhaps extend to offer a optional user defined path /var/solr/solr-backup-restore/cloud/{backupDirectory} that can then be seen my multiple SolrClouds
spec:
  storageOptions:
    BackupRestoreVolume:
       persistentVolumeClaim:
         claimName: my-nfs-pvc
       backupDirectory: "team-foo-solrclouds"

That's a really good use case that I completely missed. Let me cook something up.

I can post a stab at the diff

Maybe this....
diff --git a/api/v1beta1/solrcloud_types.go b/api/v1beta1/solrcloud_types.go
--- a/api/v1beta1/solrcloud_types.go
+++ b/api/v1beta1/solrcloud_types.go
@@ -262,6 +262,9 @@ type SolrDataStorageOptions struct {
        // Other options are to use a NFS volume.
        // +optional
        BackupRestoreVolume *corev1.VolumeSource `json:"backupRestoreVolume,omitempty"`
+
+       // Optional path for backup and restores, defaults to SolrCloud name if not provided
+       BackupRestorePath string `json:"backupRestorePath,omitempty"`
 }

diff --git a/controllers/util/solr_util.go b/controllers/util/solr_util.go
index 93879e4..ad16bab 100644
--- a/controllers/util/solr_util.go
+++ b/controllers/util/solr_util.go
@@ -109,6 +109,11 @@ func GenerateStatefulSet(solrCloud *solr.SolrCloud, solrCloudStatus *solr.SolrCl
                podAnnotations = customPodOptions.Annotations
        }

+       customBackupRestorePath := solrCloud.Spec.StorageOptions.BackupRestorePath
+       if "" == customBackupRestorePath {
+               customBackupRestorePath = solrCloud.Name
+       }
+
        // Volumes & Mounts
        solrVolumes := []corev1.Volume{
                {
@@ -166,7 +171,7 @@ func GenerateStatefulSet(solrCloud *solr.SolrCloud, solrCloudStatus *solr.SolrCl
                        Name:         BackupRestoreVolume,
                        VolumeSource: *solrCloud.Spec.StorageOptions.BackupRestoreVolume,
                })
-               volumeMounts = append(volumeMounts, corev1.VolumeMount{Name: BackupRestoreVolume, MountPath: BaseBackupRestorePath, SubPath: BackupRestoreSubPathForCloud(solrCloud.Name)})
+               volumeMounts = append(volumeMounts, corev1.VolumeMount{Name: BackupRestoreVolume, MountPath: BaseBackupRestorePath, SubPath: BackupRestoreSubPathForCloud(customBackupRestorePath)})
        }

        if nil != customPodOptions {

How does that look to you @sepulworld ? I will also need some help on your end testing this. I don't have very available NFS volumes to test with right now...

Nice! This should work well. We presently don't use the built in backup K8s Job feature in solr-operator, so I can't test that directly. But I can test out the custom directory option no problem.

I believe this PR is good to go. It has comprehensive unit tests, and I have done a lot of usage testing locally.


fix: node loader

Node loader builds successfully.

libuv is installed via build.sh to allow force linking
include headers from XCode command line tools (/Library/Developer/CommandLineTools/usr/include/c++/v1)
Use clang and clang++ compilers from XCode developer tools

@FirePing32 one thing, as we talked in the past, should we maintain in separate repos the homebrew formula with the build one. Do you want to unify them now in this repo?
I wanted to clone from the other repo and use the metacall.rb from there.


Kube 1.19 removed beta.kubernetes.io/os need to switch to kubernetes.io/os

Bug description
Kube 1.19 removed beta.kubernetes.io/os need to switch to kubernetes.io/os
[ ] Configuration Infrastructure
[ ] Docs
[x] Installation
[ ] Networking
[ ] Performance and Scalability
[ ] Policies and Telemetry
[ ] Security
[ ] Test and Release
[ ] User Experience
[ ] Developer Infrastructure
Expected behavior
kubernetes.io/os is now being used for node selector
Steps to reproduce the bug
https://github.com/istio/istio/search?q=beta.kubernetes.io%2Fos&unscoped_q=beta.kubernetes.io%2Fos
Version (include the output of istioctl version --remote and kubectl version and helm version if you used Helm)
1.6 and master
How was Istio installed?
Environment where bug was observed (cloud vendor, OS, etc)

Looks like that merged fixed this, closing.


python3Packages.sentry-sdk: stop testing integrations

They're fragile and break on most dependency upgrades and the upstream
is too slow to catch up in a reasonable timeframe.
Also implement optional-depdencies passthru attr set and clean up unused
dependencies.
Description of changes

Things done

Built on platform(s)

[ ] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
22.05 Release Notes (or backporting 21.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[x] Fits CONTRIBUTING.md.

Result of nixpkgs-review pr 174718 run on x86_64-linux 1

27 packages built:

alerta-server
cura
gns3-gui
gns3-server
home-assistant-component-tests.sentry
moodle-dl
moz-phab
netbox
octoprint
openai (python39Packages.openai)
python310Packages.django-rq
python310Packages.openai
python310Packages.sentry-sdk
python310Packages.spacy
python310Packages.spacy-loggers
python310Packages.spacy-transformers
python310Packages.textacy
python310Packages.wandb
python39Packages.django-rq
python39Packages.sentry-sdk
python39Packages.spacy
python39Packages.spacy-loggers
python39Packages.spacy-transformers
python39Packages.textacy
python39Packages.wandb
skytemple
tribler

:+1:

Also implement optional-depdencies passthru attr set and clean up unused dependencies.

I think this is more boilerplate than it's worth.  Most of the entries are literally rq = [ rq ].  They are also not used anywhere and not tested either.

Quick example where this would be useful, there are probably others in that list.
https://github.com/alerta/alerta/blob/master/requirements.txt#L17

Oh, nevermind.  I didn't realize that optional-dependencies is now a standardized attribute (#174000).

Backport?


[VL] Enable Velox memory reclaimer for auto disk-spilling

Sub-tasks listed as follow:

Velox

[x] Remove cap-based spilling codes
[x]  Allow custom arbitrator
[x]  Use arbitrator to shrink pool
[x]  Bug: "Executor not supplied"
[x]  Bug: Dead lock once throwing error from "MemoryManager::addRootPool(...)"
[x]  Bug: Assertion failed, expected "spillPartitionEntry.second->numFiles() > 0"
[x]  Bug: Assertion failed, expected "!spillFinalized_"

Gluten

[x]  Mem leak Q95
[x]  Add listenable arbitrator impl
[x]  Add 30% over-acquire

what is the meaning of 'Add 30% over-acquire'

Closing as finished.


Add upstream with static response

Description
This change is necessary to use oauth2_proxy with the envoy ext_authz module. It is not  possible to configure the envoy ext_authz module to use the /oauth2/auth endpoint. The module calls the original request path and need a response code 200.
https://www.envoyproxy.io/docs/envoy/v1.11.1/api-v2/config/filter/http/ext_authz/v2/ext_authz.proto.html
Motivation and Context
#219
Checklist:

[x] My change requires a change to the documentation or CHANGELOG.
[x] I have updated the documentation accordingly.
[x] I have updated the CHANGELOG accordingly.
[x] I have created a feature (non-master) branch for my PR.

@JoelSpeed Can you please take a look at it?

@syscll done

@JoelSpeed LGTM if you're happy?

@JoelSpeed please review.


Cannot find module 'lodash' after extension upgrade

Vetur also uses lodash and this has been reported many times: https://github.com/vuejs/vetur/issues?utf8=✓&q=is%3Aissue+lodash+is%3Aclosed+
Earliest report is https://github.com/vuejs/vetur/issues/251 at 1.13.1.
So today I'm seeing this error in dev console, and Vim is not loading.
VS Code Insider: 3fec61014742dec894b3a31cdf8556bf533cb0e1
macOS 10.12.6.
/Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.main.js:257 [Extension Host]% Object (at Object.writeFile (/Users/pine/.vscode-insiders/extensions/Equinusocio.vsc-material-theme-1.4.2/extensions/helpers/fs.js:98:13))
/Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.main.js:257 [Extension Host] Activating extension 'vscodevim.vim' failed: Cannot find module 'lodash'. (at Object.showMessage (/Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/node/extensionHostProcess.js:690:704))
t.log @ /Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.main.js:257
/Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.main.js:257 [Extension Host] Activating extension `vscodevim.vim` failed:  Cannot find module 'lodash' (at /Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/node/extensionHostProcess.js:453:87)
t.log @ /Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.main.js:257
/Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.main.js:257 [Extension Host] Here is the error stack:  Error: Cannot find module 'lodash'
	at Function.Module._resolveFilename (module.js:470:15)
	at Function.Module._load (module.js:418:25)
	at Function.o._load (/Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/node/extensionHostProcess.js:671:712)
	at Module.require (module.js:498:17)
	at Module.patchedRequire [as require] (/Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/extensions/git/node_modules/diagnostic-channel/dist/src/patchRequire.js:14:46)
	at require (internal/module.js:20:19)
	at Object.<anonymous> (/Users/pine/.vscode-insiders/extensions/vscodevim.vim-0.11.0/out/src/taskQueue.js:11:11)
	at Object.<anonymous> (/Users/pine/.vscode-insiders/extensions/vscodevim.vim-0.11.0/out/src/taskQueue.js:85:3)
	at Module._compile (module.js:571:32)
	at Object.Module._extensions..js (module.js:580:10)
	at Module.load (module.js:488:32)
	at tryModuleLoad (module.js:447:12)
	at Function.Module._load (module.js:439:3)
	at Function.o._load (/Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/node/extensionHostProcess.js:671:712)
	at Module.require (module.js:498:17)
	at Module.patchedRequire [as require] (/Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/extensions/git/node_modules/diagnostic-channel/dist/src/patchRequire.js:14:46) (at /Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/node/extensionHostProcess.js:453:155)
/Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.main.js:2839 Activating extension 'vscodevim.vim' failed: Cannot find module 'lodash'.
O._logMessageInConsole @ /Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.main.js:2839

Vim is reporting 0.11.0. And I could find the lodash dependency installed correctly at /Users/pine/.vscode/extensions/vscodevim.vim-0.11.0/node_modules/lodash.
@sandy081 I'll be up early so let me know if you want to debug through this together.
@joaomoreno Does the patchedRequire give you any hint as to why this might happen?

@octref can you check whether the extension is fully installed. This reminds me to issue #43813.

Yes this is a duplicate of #43813


Add Seagull's to Slayer tasks (Birds)

Currently doesn't highlight seagulls on a bird slayer task.
Counter does count down when killing seagulls though.

Fixed in #4199


fix: allow templating of null and undefined in a jest each key path template

Summary
See newly added e2e tests, currently jest crashed with:
 ● allows templating "$array.length"

    Cannot convert undefined or null to object

       7 | });

when adding a nested keypath as a template in a null or undefined object. Instead we just early-exit out of interplation in those cases.
Test plan

yarn test yarn constraints

hmm, not sure why the tests are now failing 😢

The one failing test is a known one

https://github.com/jestjs/jest/releases/tag/v30.0.0-alpha.4


[BUG] Splashscreen dump doesn't work

Hey! At first I'd like to thank you for all the hard work and effort! I appreciate you doing all that, and even for free!
I wanted to change the Splashscreen on my car, but sadly it doesn't work. I can't dump it, and I can't apply one from the Wiki screens. I've attached a screenshot from my 5F and the error the toolbox gives me. I hope it helps a little.
If I'm simply to dumb to use it, and this isn't a bug, then I'd love to get thrown into the right direction.
Map dumping and Skins worked fine.

I made some changes in https://github.com/jilleb/mib2-toolbox/commit/ae1cd546156310d31e9b731daa2fb79937e75d20 which hopefully fix that behaviour

I made some changes in ae1cd54 which hopefully fix that behaviour

Awesome, fixed!


Wrong datetime

Hi. Thank you for your package. I have a problem

In the picture above, I've created chat 22:43. But in chat you can see it's 16:23. Is there something with package or I should give time zone somehow?

I don't see anything wrong with DashChat package, it is just showing the date using the DateTime you give to the Message. You should check in which format/timezone your dates are saved in your database and how you fetch them. Seems like you have an issue with your date not being converted in UTC or Local when you "speak" with your database.
I'm closing it since the issue isn't related to the package as far as I know, but let me know in case you need more help


Missing 'bs4' module in requirements.txt

Hi @anmolksachan
Kindly mention 'bs4' in requirements.txt

updated the same in requirements.txt, do have a look and let me know If you have any questions/ concerns.


[WIP] Fix dist/tagging.css

This reverts a couple of deletions from #132 - cc @brumik
Looks like all the styles contributing to dist/tagging.css were removed in c1a73f2, but looks like the intent was to only remove styles related to the old select, right?
And this mostly reverts #143, except for the linter fixes - cc @karelhala
The idea is that this was right to fail, since the same issue caused ui-classic to fail as well.
So, reintroducing as a useful canary for next time :).
This means we should also be able to revert https://github.com/ManageIQ/manageiq-ui-classic/pull/6171 and just update to new react-ui-components, to get proper pf3 tagging styling back.
@miq-bot add_label wip
(this brings back all the styles, I think tag-selector should be the one to go, but want to make sure first)

Removed most of tag-selector.scss, but tag-icon seems to have a meaning in TagSelector.js, not removing.

Before (ui-classic with #132 and https://github.com/ManageIQ/manageiq-ui-classic/pull/6171):

After (ui-classic with this PR and (ui PR TODO)):

@miq-bot remove_label wip

Thanks all for the quick response!

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

:+1:


Changing exif data question

Hi, could you please explain how to change ExifImageWidth and ExifImageHeight? I use withMetadata() and Ideally I want to copy all metadata except ExifImageWidth, ExifImageHeight. ImageHeight and ImageWidth copied too and it's not correct when I change orientation. Please help.

Please try something like the following:
.withExif({
  IFD0: {
    PixelXDimension: "123",
    PixelYDimension: "456"
  }
})

Thanks! It helped!


Improving DNS-01 challenge performance

Is your feature request related to a problem? Please describe.
Hi cert-manager folks! I'm trying to reduce the time it takes for cert-manager to issue certificates via DNS-01 challenge using Let's Encrypt and Route53.
I've found that issuing a combined subdomain+wildcard certificate (e.g., foo.example.com,*.foo.example.com) takes about 4 minutes, compared to < 30 seconds for foo.example.com over HTTP-01. This delay is inconvenient when provisioning infrastructure for user-requested subdomains.
Describe the solution you'd like
I've identified a few bottlenecks in DNS-01 issuance.
Could you let me know if you are open to accepting PRs that address these?
Concurrent wildcard/non-wildcard challenges
DNS-01 permits multiple TXT entries on a given _acme-challenge.foo.example.com subdomain. A documented reason for this is to allow wildcard and non-wildcard challenges to happen concurrently:

You can have multiple TXT records in place for the same name. For instance, this might happen if you are validating a challenge for a wildcard and a non-wildcard certificate at the same time.

However, cert-manager's scheduler considers wildcard and non-wildcard challenges for the same domain to be identical, and serializes them: https://github.com/cert-manager/cert-manager/blob/e82c72cff03dda703ca918d32ab11f719edfcd88/pkg/controller/acmechallenges/scheduler/scheduler.go#L122-L125
Addressing this would also require updating the DNS provider integrations to append to existing TXT records, instead of replacing them: https://github.com/cert-manager/cert-manager/blob/e82c72cff03dda703ca918d32ab11f719edfcd88/pkg/issuer/acme/dns/route53/route53.go#L289-L291
Hardcoded 60 second sleep for propagation
The logic that manages DNS-01 solvers has a hardcoded 60 second sleep to allow for DNS propagation. This occurs after the DNS pre-check has already passed on the configured nameservers:
https://github.com/cert-manager/cert-manager/blob/e82c72cff03dda703ca918d32ab11f719edfcd88/pkg/issuer/acme/dns/dns.go#L118-L130
Given that the pre-check has passed on authoritative nameservers already, is this sleep necessary? If it's necessary for some configurations (e.g., --dns01-recursive-nameservers-only=true) to ensure complete propagation, could it be configurable?
Describe alternatives you've considered
I looked at creating a custom DNS-01 solver webhook. Unfortunately, the scheduler logic and 60 second sleep happen outside of the solver implementation.
Additional Context
https://github.com/cert-manager/cert-manager/issues/4250 also describes the TXT record issue.
/kind feature

/remove-lifecycle stale

/remove-lifecycle stale
On Sat, Mar 11, 2023 at 11:57 AM jetstack-bot @.***>
wrote:

Issues go stale after 90d of inactivity.
Mark the issue as fresh with /remove-lifecycle stale.
Stale issues rot after an additional 30d of inactivity and eventually
close.
If this issue is safe to close now please do so with /close.
Send feedback to jetstack https://github.com/jetstack.
/lifecycle stale
—
Reply to this email directly, view it on GitHub
https://github.com/cert-manager/cert-manager/issues/5430#issuecomment-1465000183,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AACV765TNIUUTXRNAWSSIZDW3TKKRANCNFSM6AAAAAAQKXH73I
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

/remove-lifecycle rotten

/remove-lifecycle rotten
On Sat, Oct 7, 2023 at 4:40 PM jetstack-bot @.***>
wrote:

Issues go stale after 90d of inactivity.
Mark the issue as fresh with /remove-lifecycle stale.
Stale issues rot after an additional 30d of inactivity and eventually
close.
If this issue is safe to close now please do so with /close.
Send feedback to jetstack https://github.com/jetstack.
/lifecycle stale
—
Reply to this email directly, view it on GitHub
https://github.com/cert-manager/cert-manager/issues/5430#issuecomment-1751866084,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AACV76Y72QK4J3HOYMAB7TTX6HR5NAVCNFSM6AAAAAAQKXH73KVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTONJRHA3DMMBYGQ
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

/remove-lifecycle stale
On Sat, Oct 7, 2023 at 4:43 PM Reed Loden @.***> wrote:

/remove-lifecycle rotten
On Sat, Oct 7, 2023 at 4:40 PM jetstack-bot @.***>
wrote:

Issues go stale after 90d of inactivity.
Mark the issue as fresh with /remove-lifecycle stale.
Stale issues rot after an additional 30d of inactivity and eventually
close.
If this issue is safe to close now please do so with /close.
Send feedback to jetstack https://github.com/jetstack.
/lifecycle stale
—
Reply to this email directly, view it on GitHub
https://github.com/cert-manager/cert-manager/issues/5430#issuecomment-1751866084,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AACV76Y72QK4J3HOYMAB7TTX6HR5NAVCNFSM6AAAAAAQKXH73KVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTONJRHA3DMMBYGQ
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

/remove-lifecycle stale
On Fri, Jan 5, 2024 at 3:47 PM jetstack-bot @.***>
wrote:

Issues go stale after 90d of inactivity.
Mark the issue as fresh with /remove-lifecycle stale.
Stale issues rot after an additional 30d of inactivity and eventually
close.
If this issue is safe to close now please do so with /close.
Send feedback to jetstack https://github.com/jetstack.
/lifecycle stale
—
Reply to this email directly, view it on GitHub
https://github.com/cert-manager/cert-manager/issues/5430#issuecomment-1879387984,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AACV762ZDQBUND5JQ3OUCMLYNCGK3AVCNFSM6AAAAAAQKXH73KVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQNZZGM4DOOJYGQ
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>


Host-Metering honors RHSM proxy configurations

Description
Add conditional loading of proxy information from /etc/rhsm/rhsm.conf.
Add log output to host info about proxy configuration.
Added log output:
        |  CpuCount: 0
        |  HostName: host.mock.test
        |  HostId: 01234567-89ab-cdef-0123-456789abcdef
        |  HTTP Proxy: No proxy set
        |  HTTPS Proxy: No proxy set
        |  ExternalOrganization: 12345678
        |  SocketCount: 3
        |  Product: [394 69]
        |  Support: Premium
        |  Usage: Production
        |  ConversionsSuccess: true
        |  Billing.Model: marketplace
        |  Billing.Marketplace: gcp
        |  Billing.MarketplaceAccount:<PHONE_NUMBER>00
        |  Billing.MarketplaceInstanceId:<PHONE_NUMBER>111111111

Proxy config prioritization:

Prefere HTTP/S_PROXY envs that are either passed to the service or loaded from drop in configuration files.
If the HTTPS_PROXY information aren't available at runtime, load proxy configuration from /etc/rhsm/rhsm.conf.

@ConorC117 I could use a review of my man page additions from a native speaker.
Can you give it another look?


Bump version number to 4.2.0

Codecov Report

Merging #4617 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master    #4617   +/-   ##
=======================================
  Coverage   58.41%   58.41%
=======================================
  Files         883      883
  Lines       29301    29301
  Branches     4253     4253
=======================================
  Hits        17115    17115
  Misses      12186    12186

Update to work off of a new label 'release-notes' instead of text in title and ensure its not picked up as a fixed issue or bug as well as being used as the banner.


Switch to govendor for dependency tracking

Govendor is a tool for managing the vendor directory in Go projects. It can calculate and fetch the exact packages your project requires. It also removes extraneous test files. And it tracks the exact revision of the packages you're using.
Fetch a new dependency with:
$ govendor fetch cloud.google.com/go/compute

Fetch and fix an exact version of a dependency with:
$ govendor fetch<EMAIL_ADDRESS>
Update existing dependencies the same way:
$ govendor fetch cloud.google.com/go/compute # or<EMAIL_ADDRESS>etc.

Prune unused dependencies:
$ govendor remote +unused

But my favourite feature is that you can just import a package in your go code:
package agent

import "cloud.google.com/go/compute/metadata"

# ...

Then tell govendor to figure it out:
$ govendor fetch +missing

:tada:
Heroku have a pretty good user guide.
This PR includes adding the vendor/vendor.json file (like a Gemfile.lock, basically) and updates a bunch of our dependencies. The code compiles, and I can successfully start an agent and run a build. I've also created an equivalent branch for 2.3: https://github.com/buildkite/agent/compare/2-3-stable...2-3-govendor. :ok_hand:

Huh, it seems I broke artifacts. AdrRoll/goamz seems to be colliding awkwardly with the official aws-sdk-go.


Add a copy of the MIT license to the repository

The asset submission says the asset's license is MIT. Please add a copy of the MIT license to the repository to confirm this :slightly_smiling_face:

I added. Check please
сб, 2 нояб. 2024 г., 17:33 Hugo Locurcio @.***>:

The asset submission says the asset's license is MIT. Please add a copy of
the MIT license to the repository to confirm this 🙂
—
Reply to this email directly, view it on GitHub
https://github.com/HellboyHeaven/AdvancedCharacter/issues/1, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AL3LM7PUQGGZYD553SV2ONDZ6T5GNAVCNFSM6AAAAABRB3VYMCVHI2DSMVQWIX3LMV43ASLTON2WKOZSGYZTANJZGY4DKOI
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

I added

Thanks! The asset is now approved: https://godotengine.org/asset-library/asset/3474


Possible integration with IS-11 Stream Compatibility Management

See #17.
An issue with this approach, simply adding another base path for e.g. /streamcompatibility to the Annotation API, is that at the moment the Annotation API is scoped/advertised as a Node 'service' endpoint, whereas the Stream Compatibility Management API is scoped/advertised as a Device 'control', and it doesn't feel quite right to have the annotations for an API at a different scope...

Update 2023-06-01:
We need to resolve by end of iteration whether (a) we want support for SCM endpoints here and (b) whether it can be done in a v1.1.
Annotation API is currently advertised on a per-node basis.  Should it be per-device for consistency with other APIs?

If we do this for IS-11 would the same argument apply to annotations on other device-oriented specs such as IS-08?

Also (spotted by @cristian-recoseanu ): what if there is >1 device in the node -- the draft PR doesn't currently indicate which device(s)


/resident-choice  - parking scheme copy edits

please remove copy relating to the months the scheme operates in from this page. Include this information on the /resident-start page instead. Sunderland has the same situation and the copy we've agreed with them is:
"Parking permits in your area are issued on 1 August every year and are valid until 31 July the following year. If you apply before 4 July, your permit will expire on 31 July."
Suggest this is adapted for Northumberland to:
"Parking permits are issued on 1 November every year and are valid until 31 October the following year."

tagging @joannesouthern to this

@EUzkuraityte all of our schemes have different start and end dates so these dates will need to be dynamically created depending on the scheme you are applying for
we are concerned if you apply part way through a scheme that you may think you are getting a year from that date, is there any suggested text for this scenario ?

Hi @joanneSouthern it's definitely a valid concern.
@lizziebruce are you able to put together a line that could make it clear to users that if they apply for a permit part way through a scheme, they will have to pay full price and their permit will expire when the scheme ends?

@lizziebruce  any thoughts on what we can put for this one ?

Hi,
As I understand it: start and end dates are different depending on your parking permit area (scheme). Based on that, a combination of @EUzkuraityte and @joanneSouthern suggestions would work:

Parking permits in your area are valid from {1 February} every year and are valid until {31 January} the following year. For example, if you apply at the start of {August} your permit will only be valid for 6 months.

Joanne, have you noticed any users in your user research who object to the permit validity structure?

@lizziebruce No we haven't noticed anything in the research, it would only be if someone moved into to a scheme where this might be picked up, a bit difficult to research these people

done in test


Ticket Signature PAC type handling

What's the problem?
Microsoft has updated [MS-PAC] in November 2020 to include another signature called Ticket Signature to address the Bronze Bit attack.
https://docs.microsoft.com/en-us/openspecs/windows_protocols/ms-pac/166d8064-c863-41e1-9c23-edaaa5f36962
This new Pac Type is generated from DCs that has the related patch and the current ParsePacType just ignore this PacType

[ ] Bugfix
[X] New Feature

What's the solution?
The solution is to add the relevant PacType to the Enum and to parse it.
My solution is only partial because it doesn't include the code required for the Process Signature function as the ticket itself is needed to populate this value (as I understood) and I do not fully understand the significance of the SignatureData property

[ ] Includes unit tests
[X] Requires manual test

What issue is this related to, if any?
Provide the issue ID if there's a related issue.

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


Can "flyway_schema_history" table creation be skipped?

Which version and edition of Flyway are you using?
Flyway 5.2.4
If this is not the latest version, can you reproduce the issue with the latest one as well?
(Many bugs are fixed in newer releases and upgrading will often resolve the issue)
Which client are you using? (Command-line, Java API, Maven plugin, Gradle plugin)
Spring Boot Flyway (uses Java API)
Which database are you using (type & version)?
Oracle SQL 12.2
Which operating system are you using?
Linux
What did you do?
(Please include the content causing the issue, any relevant configuration settings, the SQL statement that failed (if relevant) and the command you ran.)
I have two database users:

DBX_ADMIN (has all DDL's permissions)
DBX_USER (has only DML permissions)

User DBX_ADMIN creates all tables, which includes the "flyway_schema_history" table.
Now, the client application code will only be allowed to use DBX_USER group to connect to database.
But when the client application boots up, flyway being enabled, will try to create "flyway_schema_history" table as DBX_USER.
The doExists() check will fire a query but get no rows as result set, hence exists() check return "false".  Since, this user is not the owner of table, it is expected to get false.
But, I don't want it to fail here. The client must be able to work without any issue.
The DBX_USER only wants to migrate some data to database (No DDL's)
Is this not possible?
What did you expect to see?
I am hoping that I can skip the creation of "flyway_schema_history" table, even if user which connected to database is different.
As my DDL is migrated from ADMIN but the USER also using flyway only migrates data.
What did you see instead?
Application boot up fails, as the DBX_USER is trying to create a "flyway_schema_history" table but does not have the permissions.

In FLyway 6, your DBX_USER account must have permissions to check the existence of the history table as well as being able to write to it. Can you give us a use case as for why you wouldn't give your DBX_USER those permissions on that one specific table, even if you don't grant it that permission on anything else?

In FLyway 6, your DBX_USER account must have permissions to check the existence of the history table as well as being able to write to it. Can you give us a use case as for why you wouldn't give your DBX_USER those permissions on that one specific table, even if you don't grant it that permission on anything else?

I think its true for Flyway 5 as well. (do correct if wrong)
Use case:
NOTE:
We use Oracle 12 as our RDBMS

We have an Infrastructure team which creates tables for us in production environment.
These tables are created as user: DBX_ADMIN  (admin access who later grants access to DBX_USER)
We only get access to Synonyms of those tables and as user: DBX_USER. (& not admin)
This means for any table (including flyway's) DBX_USER is NOT the owner of table.
We launch our Java App, and make database connection using DBX_USER credentials.
At this point we already have all tables (including flyway's) on our RDBMS.
Now, flyway boots up.
It checks for existence of "flyway_schema_history" table.
Flyway calls:
org.flywaydb.core.internal.database.base.Table protected boolean exists(Schema catalog, Schema schema, String table, String... tableTypes)
The above methods executes a table existence query but as DBX_USER (as we connected that way from Java App)
This query, hence, returns NO row as the table was not created by this user. (Owner is DBX_ADMIN)
So Java app boot up fails.

PS: I cannot use DBX_ADMIN from Java App.

OK - I believe one way to work around this is the following:

DBX_ADMIN creates a synonym for the history table.
ensure that DBX_USER has the rights to both check the existence of this synonym and insert rows
alter the Flyway configuration parameter flyway.table (in the configuration file, or your Java code) to refer to the synonym, not the actual table

Could you see if that resolves your problem?

@juliahayward
This most certainly would, with only catch, to have a special grant permission on this table.
Anyway for now since I may not able to get DBX_ADMIN to grant such privilege to this table, I have decided to disable flyway.
I'll keep looking into getting this resolved one way or another.
Thanks for your help!


Add Chat GLM Miner

As per private discord conversation with Const adding Chat GLM miner support to the text_prompting network.

Hi, I made an implementation for Pythia from HF, so I think you can likely copy most of the code for Chat GLM:
https://github.com/ViktorThink/bittensor/tree/text_prompting_vicuna/neurons/text/prompting/miners/pythia

Hi @ViktorThink yes I saw its a helpful guide. Thank you! I think I'm almost there with this PR just need to test on the main net.

Crap, spoke to soon.  Reopened

Is this tested against latest master @KMFODA ?

So we already have the StablilityAI miner here: https://github.com/opentensor/bittensor/tree/master/neurons/text/prompting/miners/stabilityai
Closing. Please reopen to merge into release/5.1.0 with only Chat GLM.

Hey @ifrit98 apologies I was on leave this past week. Noted, I'll create a new pr for the Chat GLM miner. In terms of test, are there specific tests that need to be run before opening a PR for review?


SP-577: Correct IPAC Lead / SPHEREx POC logic

My main concern here is that some categories of documents don't have "SPHEREx POC"s.  Previously that was enforced, in an incomplete way, by the code, but now it seems like it will just be by policy?

@gpdf Ok I'm done with my proposed changes. I think the problem with the TN series is that the "other authors" filter was filtering out the wrong role and the lead/POC property was incorrect. So what I'm proposing here is moving the properties for IPAC lead, SPHEREx POC, and "other authors" down to the base SpherexMetadata class so that they're always treated consistently.
This lines up with the the Jinja HTML template which is showing IPAC Lead, SPHEREx POC and other authors based on whether they're marked up in the document, irregardless of whether we expect a document to have those roles or not. This also matches the treatment in the LaTeX class code, because if someone added say a \spherexlead command to a document that didn't support it, the titling command would still add that spherexlead to the document.
Now, if we want to prevent a certain document series from having a SPHEREx POC, for example, we could add a Pydantic validator to its data model class that ensures no author is marked up with the SPHEREx Lead role. I think that would be easier to maintain and more transparent than what I had before.
I'll also mention that since the IPAC Lead and SPHEREx POC are marked up as roles on the "authors" (Contributor types), there's no change in the JSON serialized data. That's why we didn't need to version the properties after all because it's only the SPHEREx HTML template that was using those properties.


Updated cxx core object tests to work on hw.

Updated the cxx core object tests to enumerate based on device id.
Changed the object write tests to target the write to fme/*perf/fabric/freeze instead of errors since on hw it would not be able to write to the file.
Updated the mcp mock sysfs tar with fme/iperf/fabric/freeze.

These tests fails on 012, token_object, handle_object, read_bytes.