Definition of "government organization" too restrictive

According to the definition of "government organization", to be a government organization, an organization must be responsible for both the oversight of specific governmental functions and the administration of those functions. But need oversight and administration go hand-in-hand? Might not one organization be responsible for the oversight of specific government functions while another organization is responsible for the administration of those functions? If so, neither organization could count as a government organization according to the current definition, and that seems to be a mistake.

This is a good catch, but I think the term 'and' is being used more colloquially here, not logically. But, we do not want to say 'or' and create such a strict disjunction.

@cameronmore:
Your suggestion that 'and' is being used in a colloquial sense here is interesting. A few thoughts:

At least initially, I'm skeptical that there is such a colloquial sense of 'and'. (If there were, I would have expected some pushback when I presented to my dad and stepmom--neither of whom is much of a logician--the definition of 'government organization' and my criticism of it, but instead they were both totally onboard. More importantly, I would have expected some pushback from logic students to the truth conditions for 'and' (much like their pushback to the truth conditions for 'or' and 'if-then', but I've never received any.) I'm open to being persuaded, however. Other examples of the alleged colloquial sense would be helpful.
If there are multiple senses of 'and', then the definition is ambiguous. But not being ambiguous seems to be a desideratum of ontology definitions. Perhaps, then, if there are multiple senses, revisions to the definition are called for to disambiguate it?
You said that we don't want to say 'or' because it would create a strict disjunction. But I worry that the colloquial sense of 'and' would have to be equivalent to such a disjunction to handle my counterexample, in which case it would seem that the definition is already using such a disjunction, but simply hiding it.

Let me end with a question related to the third thought: Given that other definitions in the Agent Ontology do use 'or', why would its use here be so problematic?

then we can make it 'and/or' and users will know that it's an inclusive disjunction. Some terms in the ontology use 'and/or', and some use 'or' to express the same thing logically.

The comments by @gregfowlerphd over the past two days lead me to ask about the chosen format for definitions in CCO and the scope of CCO.
It seems to me the ambiguities stem from CCO definitions' choice of words that do not obviously correspond to properties. In the case of Government Organization, the phrase:
is responsible for the oversight and administration of specific governmental functions.

means (I think):

A Government Organization is the active agent in at least one process that is either an oversight process, an administrative process, or both.
The process has as participants a government function and a Government.
The government function specifically depends on the Government.

The definition of Government Organization would be something like:
An Organization that is part of a Government and is the active agent in at least one process that is either
an Act of Oversight or an Act of Administration, and this process has as participants a Government Function
and a Government, and the Government Function inheres in the Government.

I'm writing the definition to suggest individuals associated with a Government Organization, along with the object properties used to associate them. I'm also suggesting some classes that should be in CCO, in the sense that the current definition implies their need.
Certain BFO definitions are written this way. You'd need first order logic to express the definition formally, but it's still more precise than the current version.
All this leads me to ask two questions:

Many CCO definitions are less rigorous than BFO's. Was this a deliberate decision?
If a CCO definition contains a conceptual term that's not a class or an object property, is CCO incomplete?

@cameronmore Yeah, I think changing 'and' to 'and/or' would be the best solution. (Though I haven't yet read the proposal by @swartik, so maybe I'll change my mind.)

I've now read the proposed definition by @swartik. It seems like a much more drastic revision than is required in response to my counterexample, given the availability of the 'and/or' revision. (Though perhaps @swartik thinks there are other reasons to make such a drastic revision.)

@gregfowlerphd Well, I am not so much proposing a new definition as wondering why CCO definitions are, by and large, less precise than BFO definitions. I am also giving food for thought to everyone pondering the definition of a middle ontology.

@swartik certainly there's a lot of room for improvement. The industrial ontologies foundry has done good work making sure their terms are formally axiomatized and well-defined. Perhaps we should consider offering more formal axioms for certain important concepts in the common core, like artifact.

@cameronmore: Since you've been opening pull requests to close many of my issues, I was wondering whether we'd determined how to resolve this one. I thought we had (the "and/or" option), but I'm not sure.

I did a search and there are only a few terms that use 'and/or' phrase. I think turning 'and' into 'or' would be fine, and I hope users would understand that this is an inclusive 'or' (not exclusive). The entire definition could be improved which is another option. But I don't have a strong opinion on how to fix this one.

@cameronmore: I guess I'm inclined towards the option of changing 'and' to 'or'. The latter is often used in CCO (including in the Agent Ontology), and users are trusted to understand that an inclusive disjunction is intended.

This PR has been merged. Closing issue.


allow Symfony HTTP Client v7.1 as a dependency

There may be more dep updates needed. Please advise if this is an acceptable request to make.

This package successfully installed now with these two constraint changes.


Security vulnerability CVE-2020-26301 in ssh2 via dependency tunnel-ssh

I'm submitting a...

[ ] Bug report
[ ] Feature request
[x] Question

Current behavior
The ssh2 version is fixed in tunnel-ssh which is one of the dependency of db-migrate. That version of ssh2 (0.5.4) has a security vulnerability reported in https://nvd.nist.gov/vuln/detail/CVE-2020-26301 and also in tunnel-ssh https://github.com/agebrock/tunnel-ssh/issues/88.
It seems tunnel-ssh has not been active for a long time, so just wondering is there is a plan to replace tunnel-ssh or something else. Thanks
└─┬<EMAIL_ADDRESS>  └─┬<EMAIL_ADDRESS>    └──<EMAIL_ADDRESS>
Expected behavior

Minimal reproduction of the problem with instructions
What is the motivation / use case for changing the behavior?

Environment

db-migrate version: X.Y.Z
plugins with versions: X.Y.Z
db-migrate driver with versions:

Additional information:
- Node version: XX
- Platform:

Others:

Good news, tunnel-ssh has just updated the dependencies ssh2 to 1.4.0, can we also have an update here ? Thanks!


fix url and del bugfix/tests

Pull Request Test Coverage Report for Build<PHONE_NUMBER>9
Details

240 of 260 (92.31%)  changed or added relevant lines in 4 files are covered.
7 unchanged lines in 1 file lost coverage.
Overall coverage increased (+0.1%) to 95.244%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

znsocket/client.py
3
7
42.86%

znsocket/objects/init.py
230
246
93.5%

Files with Coverage Reduction
New Missed Lines
%

znsocket/client.py
7
89.72%

Totals

Change from base Build<PHONE_NUMBER>1:
0.1%

Covered Lines:
721

Relevant Lines:
757

💛  - Coveralls

Pull Request Test Coverage Report for Build<PHONE_NUMBER>9
Details

240 of 260 (92.31%)  changed or added relevant lines in 4 files are covered.
7 unchanged lines in 1 file lost coverage.
Overall coverage increased (+0.1%) to 95.244%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

znsocket/client.py
3
7
42.86%

znsocket/objects/init.py
230
246
93.5%

Files with Coverage Reduction
New Missed Lines
%

znsocket/client.py
7
89.72%

Totals

Change from base Build<PHONE_NUMBER>1:
0.1%

Covered Lines:
721

Relevant Lines:
757

💛  - Coveralls


Enhancement: Refactor the retentionlabel ensure/remove commands to use the 'SetComplianceTagOnBulkItems' endpoint

All our retentionlabel ensure / remove commands currently use the SetComplianceTag endpoint.
However, this method will be deprecated in the near future. This is because of a concern on the boolean parameters that can be used with the endpoints. (See my blog for more information.
We should refactor our commands to use the SetComplianceTagOnBulkItems endpoint, which does not have the same concerns.

An extra reason to switch to using this endpoint is that this endpoint allows you to apply Unpublished retention labels. Which means you can have retention labels that are NOT visible to end users, but usable by automation, which is a real good scenario.

Implementation
The endpoint can be called as follows:
POST <site_url>/_api/SP_CompliancePolicy_SPPolicyStoreProxy_SetComplianceTagOnBulkItems
Authorization: "Bearer <accessToken>"
Content-Type: "application/json"

{
    "listUrl": "<list_absolute_url>",
    "complianceTagValue": "Retain 10 years",
    "itemIds": [1,2,3,4,5]
}

The endpoint returns a 200 response with an "odata.null": true. If a list item cannot be found, it will be returned. The endpoint will also throw an error if the label cannot be found.
An important thing to note is that you'll need the absolute URL of the list, which means we might need to execute an HTTP request to get at it.
Commands to update

[ ] spo listitem retentionlabel ensure
[ ] spo listitem retentionlabel remove
[ ] spo file retentionlabel ensure
[ ] spo file retentionlabel remove
[ ] spo folder retentionlabel ensure
[ ] spo folder retentionlabel remove

Let's just open this one up... as the current method will become deprecated, we'll need to move along anyway.


Where does next.js go in the stack? Middle-end?

Although I feel confident that Next is more-or so the middle-end of an application.
Sometimes I find myself hypothetically questioning if Next is right for the job for hypothetical projects.
Let's say for whatever reason platform like facebook was to be rewritten, would Next be suited for handling that and where would it go in the stack?

It's definitely the front end and BYOB(Bring Your Own Backend)
Although it's possible to do some backend work in Next.js, you should only do it to support the UI. Not to serve data.

You could definitely attach arbitrary routes to your next server (examples: https://github.com/zeit/next.js#custom-server-and-routing), but we don't recommend it.
It's much better suited to plugging into other backends and APIs. For example, you can host your microservices on https://now.sh and query them to get your data (see the examples in the README using fetch).
Thanks for your question!


[gym] measure build time in gym and share data to lane_context

Checklist

[x] I've run bundle exec rspec from the root directory to see all new and existing tests pass
[x] I've followed the fastlane code style and run bundle exec rubocop -a to ensure the code style is valid
[x] I've read the Contribution Guidelines
[x] I've updated the documentation if necessary.

Motivation and Context

In my project, we are measuring build time by wrapping build_ios_app with Benchmark.measure`, like below. This is enough to monitor the trend of changes in our app's build time.
tms = Benchmark.measure do
  build_ios_app
end
UI.message("Build Time: #{tms.real} secs")

However, this is not only inaccurate to see how much time "xcodebuild archive" spends but also not looking great on Fastfile as it brings "Ruby" code to fastlane's beautiful DSLs.
This PR adds a small tweak to expose the elapsed time for building/archiving app in gym to Actions.lane_context, which then we can use it for logging.
Description

I considered using Benchmark module initially as I used it in our project but realised require 'benchmark' in fastlane is not worth doing because Benchmark is useful when it comes to measuring "CPU time" that is executing code but xcodebuild archive normally takes time for IO for copying files so CPU time isn't suitable to see build time.
Instead I simply used Time.now to get start time and finish time and worked out the elapsed time!
There are various tools to check build time but this PR's one benefits by having no dependency other than fastlane itself.
https://github.com/MobileNativeFoundation/XCLogParser
Testing Steps

Add this to Gemfile and run bundle install
gem 'fastlane', git: 'https://github.com/ainame/fastlane.git', branch: 'measure-build-time'

You can test this with something like this lane.
lane :test do
  match
  build_ios_app
  UI.message("Build Time = #{Actions.lane_context[SharedValues::GYM_BUILD_TIME]} secs")
end

I like this! Is there any benefit to also adding an GYM_ARCHIVE_TIME as well? 😇

@joshdholtz
Thanks! Does that mean you want to distinguish build and archive? As far as I understand that gym switches the command to build or archive  based on skip_archive option here.
https://github.com/fastlane/fastlane/blob/d68d2aac2f1496776aab168c94342ab109bd086d/gym/lib/gym/generators/build_command_generator.rb#L56-L57
I can differentiate GYM_BUILD_TIME and GYM_ARCHIVE_TIME but it all depends on just one flag to *skip*_archive, which isn't clear on what xocdebuild's subcommand is used. In my opinion, it might be a bit confusing to choose an appropriate key for the lane context by that option. A single key to get elapsed time is easier than that and users would be able to figure out what spends for the build time from console log, or their code and intention.
I think the name BUILD_TIME here means in a broad sense. it may not be too clear about whether build or archive but it's not wrong for archiving as well? What do you think?

Thank you so much to sharing this post.

Thank you for sharing your valuable solution, it's work properly.

Thank you for sharing your valuable solution, it's work properly.

I'm likewise searching for an answer, Because I am additionally getting an equivalent issue. Kindly assistance! What do we need to do?


@WithMockOAuth2Scopes test helpers

New test helpers similar to the ones here: https://github.com/spring-projects/spring-security/tree/master/test/src/main/java/org/springframework/security/test/context/support but for mocking OAuth2 scopes.

Closing as this is a major change that we are no longer accepting.
As you may be aware, this project is in maintenance mode and will reach EOL in the very near future. Please see the initial announcement and follow-up announcement for further details.
At this time, we are only accepting bug fixes and minor enhancements that can be cleanly merged into master.
Thank you for your understanding and we would welcome your contributions to the new OAuth 2.0 / OpenID Connect support in Spring Security.


Consider K8s version when drift handling for amiSelectorTerms

Description
What problem are you trying to solve?
Karpenter provides automatic drift detection when an updated AMI is released. However this only works if you use amiFamily / a very liberal and flexible ami selector.
For those who need to use amiSelectorTerms to specify specific AMI Ids, drift detection doesnt seem to consider the k8s version. This was tested on karpenter 0.34, where Karpenter drifted all nodes even though the AMI was for the next k8s version.
How important is this feature to you?
This is critical.
We cannot rely on loose ami selectors or liberally use amiFamily, as we do not want our nodes to constantly get updated based on recent AMI releases. We would like to control the AMI update process, whilst also having the ability when performing cluster upgrades, for Karpenter to help us with drift.
The preferred workflow would be:

Update the amiSelectorTerms with the next AMI Id for the next k8s version
Apply but no drift is performed as Karpenter acknowledges current cluster version
Update cluster version to next
Karpenter acknowledges new cluster version, performs drift as the next AMI ID in the selectorTerm qualifies

Please vote on this issue by adding a 👍 reaction to the original issue to help the community and maintainers prioritize this request
Please do not leave "+1" or "me too" comments, they generate extra noise for issue followers and do not help prioritize the request
If you are interested in working on this issue or have submitted a pull request, please leave a comment

Do you mind re-opening this in aws/karpenter-provider-aws? AMI drift is implemented there, not in this repo.
A high level question though, is there any reason you need to update your amiSelectorTerms before upgrading your k8s version? Could you address by updating your order of operations such that 1 occurs after 3? Happy to discuss more in the other repo.

There's a similar feature request here: https://github.com/aws/karpenter-provider-aws/issues/4769. @alex067 I suspect that this is effectively what you are asking -- where you could do something like define the discovered K8s version as a tag, part of the AMI name, or part of an SSM path and Karpenter would inject that at runtime.
In this case, if you had tagged the new AMI in a specific way, you could select against AMIs with k8s-version: $K8S_VERSION. Given that issue is opened in the AWS repo, I'm going to close this one out.
Feel free to add your use-case to that issue if you don't feel that it's covered in the existing one.

/close


Touching map marker binds map drag to mouse

How to reproduce

Leaflet version I'm using: 0.7
Browser (with version) I'm using: Chrome
OS/Platform (with version) I'm using: Windows 10
step 1 Touch a marker with a finger
step 2 Try to move the mouse

What behaviour I'm expecting and which behaviour I'm seeing
The mouse is permanently bound to the map drag until I touch with my finger again on another place of the map.  I'm looking to see if anyone else has experience this same issue.

Hi,
Could not reproduce with Win10 Pro, Chrome 65.
Tried with Markers with or without Popup attached, with Leaflet 1.3.1 (currently latest) and also with 0.7.7, although we will likely not provide support for that version.
If you still experience your bug, please provide a reproduction case with Leaflet 1.3.1 and I will re-open.
For example you can use http://leafletjs.com/edit to build the case.


Fix imports by removing init.py

This PR removes the root __init__.py to make it namespace and fix the imports of model, service, controller packages. Fixes:
  File "/home/z/envs/datastax/lib/python3.6/site-packages/flask/cli.py", line 260, in locate_app
    __import__(module_name)
  File "/home/z/customers/datastax/getting-started-with-astra-python/getting_started_with_astra.py", line 3, in <module>
    from controller.credentials_controller import credentials_controller
ModuleNotFoundError: No module named 'controller'

When running FLASK_ENV=development FLASK_APP=getting_started_with_astra.py flask run

Heya, thanks for the PR!


Remove additional letters

Details
Remove additional letters after selecting a suggested emoji (in android devices).
Fixed Issues
$ https://github.com/Expensify/App/issues/16106
$ https://github.com/Expensify/App/issues/16106#issuecomment-1480687210
Tests
I've test all the scenario with selected emojis in android and ios platform.
Steps to follow:

Open the application
Navigate to any existing chat
type :sm and select emojis from suggested list
press return / enter button from keyboard.

[x] Verify that no errors appear in the JS console

Offline tests
QA Steps

[x] Verify that no errors appear in the JS console

PR Author Checklist

[x] I linked the correct issue in the ### Fixed Issues section above
[x] I wrote clear testing steps that cover the changes made in this PR

[x] I added steps for local testing in the Tests section
[x] I added steps for the expected offline behavior in the Offline steps section
[x] I added steps for Staging and/or Production testing in the QA steps section
[x] I added steps to cover failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[x] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)
[x] I tested this PR with a High Traffic account against the staging or production API to ensure there are no regressions (e.g. long loading states that impact usability).

[x] I included screenshots or videos for tests on all platforms
[x] I ran the tests on all platforms & verified they passed on:

[x] Android / native
[ ] Android / Chrome
[x] iOS / native
[x] iOS / Safari
[x] MacOS / Chrome / Safari
[x] MacOS / Desktop

[x] I verified there are no console errors (if there's a console error not related to the PR, report it or open an issue for it to be fixed)
[x] I followed proper code patterns (see Reviewing the code)

[x] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick)
[x] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[x] I verified that comments were added to code that is not self explanatory
[x] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[x] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method

[x] If any non-english text was added/modified, I verified the translation was requested/reviewed in #expensify-open-source and it was approved by an internal Expensify engineer. Link to Slack message:

[x] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[x] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is approved by marketing by adding the Waiting for Copy label for a copy review on the original GH to get the correct copy.
[x] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[x] I verified the JSDocs style guidelines (in STYLE.md) were followed

[x] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[x] I followed the guidelines as stated in the Review Guidelines
[x] I tested other components that can be impacted by my changes (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar are working as expected)
[x] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[x] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[x] I verified that if a function's arguments changed that all usages have also been updated correctly
[x] If a new component is created I verified that:

[x] A similar component doesn't exist in the codebase
[x] All props are defined accurately and each prop has a /** comment above it */
[x] The file is named correctly
[x] The component has a clear name that is non-ambiguous and the purpose of the component can be inferred from the name alone
[x] The only data being stored in the state is data necessary for rendering and nothing else
[x] For Class Components, any internal methods passed to components event handlers are bound to this properly so there are no scoping issues (i.e. for onClick={this.submit} the method this.submit should be bound to this in the constructor)
[x] Any internal methods bound to this are necessary to be bound (i.e. avoid this.submit = this.submit.bind(this); if this.submit is never passed to a component event handler like onClick)
[x] All JSX used for rendering exists in the render method
[x] The component has the minimum amount of code necessary for its purpose, and it is broken down into smaller components in order to separate concerns and functions

[x] If any new file was added I verified that:

[x] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[x] If a new CSS style is added I verified that:

[x] A similar style doesn't already exist
[x] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(themeColors.componentBG))

[x] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[x] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[x] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[x] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[x] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.
[x] I have checked off every checkbox in the PR author checklist, including those that don't apply to this PR.

Screenshots/Videos

Web
https://github.com/Expensify/App/assets/43398804/ed08cd8d-0f5d-4a65-91c9-213ea8072d06

Mobile Web - Chrome

Mobile Web - Safari

Desktop
https://github.com/Expensify/App/assets/43398804/6a4b20c8-bc37-4717-a0a3-b541f6b40d41

iOS
https://github.com/Expensify/App/assets/43398804/7e5fe4ff-5051-4282-8669-fb2886d60105

Android
![Screenshot_2023-05-11-10-06-55-56_4f9154176b47c00da84e32064abf1c48](https://github.com/Expensify/App/assets/43398804/4fe7d57c-0c76-40d3-9f83-d664e8890259)
https://github.com/Expensify/App/assets/43398804/a2c31d10-896b-482f-957f-4910c4bc7a72

Hey @kaushiktd did this come out of an issue your proposal was accepted for? If so, which one (so I can assign the right team members)? If not, let me know and I'll close this PR - be sure to read our Contributing guidelines before moving forward with PRs - we're excited to have your interest, though!

Ah cool! Yeah so make sure to use the existing App PR template so that the magic links to the existing issues work! In this case, I'll just assign @johnmlee101 and @mollfpr to this one. Thanks!

@johnmlee101 @mollfpr  I checked guidelines but I could not find the template you have mentioned about. Can you please help here?

Okay I found it and I think it is ready for review. @johnmlee101 @mollfpr

@kaushiktd you will still need to add tests on all other platforms to demonstrate that there are no regressions. If you could add appropriate screencapture and checks for those that would be great!

@johnmlee101 I've added video files for web, Desktop, ios, and android.
Note that I have run Expensify on my local system and it generates http://localhost:8080/ URL. So it will work only with the system where we compile the code. Hence, above url is not loading in Mobile Chrome and Safari browser.

I am getting an error in reverting. Can I create a new PR and close this one? @mollfpr

@kaushiktd Yup, no problem!


Primer on Service Worker performance best practices

I'll defer to Jeff for the content of this guide. Some ideas we kicked around with the loading team the last time we thought about creating such an article:

Pro tip #1: Mitigate startup cost with Navigation Preload
Pro tip #2: avoid responding with a reissued request from SW
Pro tip #3: use streaming respondWith for improved performance
Pro tip #4: no fetch event handler optimization
Pro tip #5: prefer a conservative “scope”

@jakearchibald covered nav preload in an updates post earlier in the year.

Thanks for getting this started, @jeffposnick!

I've put together a draft that's been reviewed, and I think I'm ready to file a PR.
Should I host the content alongside the existing articles, like https://developers.google.com/web/fundamentals/instant-and-offline/service-worker/registration? Or was the idea to host this in a (yet to be created) new section?
CC: @petele

Hey Jeffy - in the new IA, it'll go under /web/fundamentals/primers/service-workers/. Take a peek at the webfu-new-ia branch and you can see it semi-staged here

The goal is to get the new site launched mid-next week.

Sounds good. I'll file a PR with the webfu-new-ia branch as the base.


DRILL-7081: Upgrade GlassFish Jersey and Javax Servlet dependecies

This is a draft PR, since it is necessary to investigate what dependencies can be excluded to avoid increasing drill-jdbc-all jar file.

@sohami Could you please take a look?

@sohami I have solved the issue with jdbc-all jar size and removed dependency on Update Jetty #1681 commit from this PR.
So you can review it independently from #1681


Structure of v2.0 public API

For now, this assumes that stdio_mgr will remain a @contextmanager-decorated function, rather than a full StdioMgr class.
stdio_mgr must be public.
IIUC the main other consideration is whether to make RandomTextIO and TeeStdin themselves public; or, to make them private but provide a public means for users to identify whether they are in use, or whether a given stdio stream is (most likely) the real one from sys.
The latter could be achieved by, e.g., a public stub superclass.
@bskinn best stab at a summary of the options:

Keep them public

Advantages

TeeStdin was implicitly public in v1.0.x

Disadvantages

A risk here is possibly making it harder to change the API/signature of RandomTextIO/TeeStdin if anything other than optional keyword arguments are needed.
There is also the additional thought that would have to go into making sure the classes are semantically configured well for public use... good names, useful & documented APIs & behaviors, etc. Advantage

Make them private

Advantages

Behavior and API become implementation detail and can be freely changed
No external need to carefully document or name the classes
Users could isinstance check on a single public class, rather than having to remember both classes

Disadvantages

No external need to carefully document or name the classes
Pulls TeeStdin out of ~public API, a break from v1.0.x
Expands the inheritance structure of the package

As usual, API will be reflected both in docs and in what __init__.py pulls in.

@jayvdb The more I think about this, the more it seems like everything should be private/implementation-detail except stdio_mgr and StdioManager.
Do you think that users would frequently want to use RandomTextIO/TeeStdin and their SafeClose variants much? It seems to me that relatively few would.
Separately, if I read your intent correctly based on your ideas in #4, the logic/implementation of the content teeing may change appreciably in the future anyways.
To my mind, all this argues for an aggressive expansion of what's considered private.

Hm. Though, if users may want to be checking types of the mocked streams, then it I guess it makes more sense for those types to be part of the public API, with the corresponding promise that they won't be renamed/etc. in a breaking way without some notice coming from a major version bump...

(Continued from this discussion on #64.)
I'm still coming to grips with the scope and granularity of what you're working towards, @jayvdb, so I suspect my vision on things is pretty incomplete. But, hazily, it seems like it would be nice to have a 'dual-level' (or 'multi-level'?) API, where, e.g., for simple cases users would just tee one/both stdin and stderr over to stdout and do direct string comparisons on actual/expect; but for complex cases, things like #65 and all of the tuple/etc. functionality of #53, #62, #64, et al. would be available.

Im also working it out as I go ;-), trying to incorporate the functionality needed by various existing similar implementations, especially those which are currently limited because of the lack of proper TextIOWrapper streams (which is usually the case, including pytest's capture).
I knew about coala-utils before starting this of course, but that hasnt been a driver as it is already stable.  I am now using it only as a sample re-implementation, to see where the pain points are.
Beyond the simple case, I think we need an reasonably easy solution for selecting a mix of streams to be mocked as that will be a common case.
I suspect the advanced users need to be using composition rather than simply inheritance and instantiation arguments, so that people can use our bases but extend them and implement their own 'manager' classes which has the features they need.  I expect like coala-utils and the pytest plugin, they will have already built fairly advanced testing features (even though the streams are very basic StringIO) and they dont want to loose them, and don't have a reason for trying to push their features into a future stdio-mgr v3 - their existing test rig is working -- why would they invest in someone elses test rigging.  To bring them into the fold, we need multiple levels, so they find a way to add the features they already have.
I do want a release soon-ish, so we cant get all the features done, but my soonish needs are all really basic usage, like the bom-open testing.


Add option to show or hide panel icons

Currenlty I'm using custom CSS, adding an option to show icons will be good for UI and UX.

Closing as similar to #227076, But not sure if we will show both as it takes a lot of space


Doc: Parent layout notes for Layouts section

Should be noted that any astro component (layout or not) automatically populates an <html>, <head>, and <body> if none are explicitly defined. If any of the <html>, <head>, and <body> tags are defined in a component, that component takes precedence of inserting the three tags and must contain all of the three elements that are edited.
Example: if you want to add a class to body, it must be in the same component as where the html or head elements are. If you aren't adjusting the html or head elements, then you dont necessarily have to include html or head in that same component.
Essentially, the docs should say that all three of these elements should be grouped together in only one astro component/layout file.

For the main layout component (containing any of the forementioned tags), the <style> tag should not be inserted on the top of the page like convention says for other astro components. They can pretty much be put anywhere else BUT above <html>

The first point is the most important that gives errors commonly found such as https://github.com/withastro/astro/issues/2827

This behaviour should have been recently fixed by withastro/astro#3408
@KyleFontenot Would you be willing to try a small reproduction to see whether you can confirm that this is no longer an issue? If so, then no addition to the docs us neccessary!  🥳

You don’t need html/head/body but at some point you need <head> in one and only one file
No special layout vs component logic
head required for script injection
Can we recommend a standard pattern?

@delucis I know you've added your notes here from our issue triage with Nate today, so don't want to close this out on you. But, given that the bug causing the initial issue has been fixed, is there anything that you think NEEDS to change in the docs related to the original request? Did we address the issue with the <style> tag?
Do we consider a "recommended standard pattern for layouts" to be a separate issue?
Note:
Our docs are currently more "strict" than necessary:

Astro Pages must return a full ... page response, including  and . (<!doctype html> is optional, and will be added automatically.)

Do we want to continue being overly conservative for "safety" or be explicitly accurate, as per your notes from today, and simply recommend a particular layout pattern? (And again, is this its own issue?)

Can confirm the issue was fixed! Someone can now refactor <body> into a child layout. Even class assignments work (didn't before).  I only tested the <body>, but I'm assuming refactoring <head> works the same.
My second point in my original point was to not put <style> on top of the <html>, but I think it's unnecessary now as developers should know, and it's a small exception because you can put <style> anywhere in any other .astro file.
The excerpt @sarah11918 on the docs is accurate and good. My suggestion is to add that excerpt, without the codeblock, as a blockquote underneath the Nested Layouts section. Top-down, I think that would be more specifically relevant to nesting layouts, instead of being on the Pages page.


sort feats based on localised title at game UI

Should it be possible to disable this? Maybe a setting that's not shown in the UI?

Should it be possible to disable this? Maybe a setting that's not shown in the UI?

yes. fixed.


The ideas coincide

I have been researching jitsi-meet.
Since a jibri can only record one meeting, this cannot satisfy my users.
I recommend using the local-recording solution to solve it.
Unfortunately, in some cases, the recording file will be lost,
so I Thinking of using k8s' dynamic scaling to solve this problem,
I saw this warehouse today, which was consistent with my idea, which really made me very excited.
Does the recording on avstack use this solution?
Will he lose the recording file? Is this a good solution?

We use this solution on AVStack, and we've found it to be robust. We've never lost a recording.

This is really a happy thing, the work you do is so exciting.


Backport 1168 to 3.x (Limit retries)

Description
Backport #1168 to resolve #1164
Quality checklist

[x] Your code complies with our Coding Style.
[x] You've updated unit and/or integration tests for your change, where applicable.
[ ] You've updated documentation for your change, where applicable.
If your change affects other repositories, such as Documentation, Samples and/or MainSite, add linked PRs here.
[x] There's an open issue for the PR that you are making. If you'd like to propose a new feature or change, please open an issue to discuss the change or find an existing issue.
[ ] You've added required license files and/or file headers (explaining where the code came from with proper attribution), where code is copied from StackOverflow, a blog, or OSS.

/azp run cleanup-code

/azp run Steeltoe.All


Create Posts “laponia”

Automatically generated by Netlify CMS

👷 Deploy Preview for helpful-dango-319c99 processing.

Name
Link

🔨 Latest commit
d6f65efaae5103d6b6355da1fe86792d14fdbc94

🔍 Latest deploy log
https://app.netlify.com/sites/helpful-dango-319c99/deploys/6651f9354f49aa0008a74e2c


LoweringError with tuple_setitem and slice

The reproducer:
from numba import njit
from numba.cpython.unsafe.tuple import tuple_setitem

@njit
def settuple(t):
    new_t = tuple_setitem(t, 0, t[1])
    return tuple_setitem(new_t, 1, t[0])

t = (0, slice(None, None, None))
print(settuple(t))

fails with a LoweringError with the following traceback:
Traceback (most recent call last):
  File "/home/gmarkall/numbadev/numba/numba/core/base.py", line 710, in cast
    impl = self._casts.find((fromty, toty))
  File "/home/gmarkall/numbadev/numba/numba/core/base.py", line 48, in find
    out = self._find(sig)
  File "/home/gmarkall/numbadev/numba/numba/core/base.py", line 57, in _find
    raise NotImplementedError(self, sig)
NotImplementedError: (<numba.core.base.OverloadSelector object at 0x7f54542962b0>, (slice<a:b>, Union[int64,slice<a:b>]))

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/gmarkall/numbadev/numba/numba/core/errors.py", line 755, in new_error_context
    yield
  File "/home/gmarkall/numbadev/numba/numba/core/lowering.py", line 231, in lower_block
    self.lower_inst(inst)
  File "/home/gmarkall/numbadev/numba/numba/core/lowering.py", line 361, in lower_inst
    val = self.lower_assign(ty, inst)
  File "/home/gmarkall/numbadev/numba/numba/core/lowering.py", line 537, in lower_assign
    return self.lower_expr(ty, value)
  File "/home/gmarkall/numbadev/numba/numba/core/lowering.py", line 1065, in lower_expr
    res = self.lower_call(resty, expr)
  File "/home/gmarkall/numbadev/numba/numba/core/lowering.py", line 796, in lower_call
    res = self._lower_call_normal(fnty, expr, signature)
  File "/home/gmarkall/numbadev/numba/numba/core/lowering.py", line 1018, in _lower_call_normal
    argvals = self.fold_call_args(
  File "/home/gmarkall/numbadev/numba/numba/core/lowering.py", line 735, in fold_call_args
    argvals = typing.fold_arguments(pysig,
  File "/home/gmarkall/numbadev/numba/numba/core/typing/templates.py", line 243, in fold_arguments
    ba.arguments[name] = normal_handler(i, param, ba.arguments[name])
  File "/home/gmarkall/numbadev/numba/numba/core/lowering.py", line 722, in normal_handler
    return self._cast_var(var, signature.args[index])
  File "/home/gmarkall/numbadev/numba/numba/core/lowering.py", line 701, in _cast_var
    return self.context.cast(self.builder, val, varty, ty)
  File "/home/gmarkall/numbadev/numba/numba/core/base.py", line 713, in cast
    raise NotImplementedError(
NotImplementedError: Cannot cast slice<a:b> to Union[int64,slice<a:b>]: %".8" = extractvalue {i64, {i64, i64, i64}} %"inserted.f1", 1

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "repro.py", line 12, in <module>
    print(settuple(t))
  File "/home/gmarkall/numbadev/numba/numba/core/dispatcher.py", line 501, in _compile_for_args
    raise e
  File "/home/gmarkall/numbadev/numba/numba/core/dispatcher.py", line 434, in _compile_for_args
    return_val = self.compile(tuple(argtypes))
  File "/home/gmarkall/numbadev/numba/numba/core/dispatcher.py", line 979, in compile
    cres = self._compiler.compile(args, return_type)
  File "/home/gmarkall/numbadev/numba/numba/core/dispatcher.py", line 141, in compile
    status, retval = self._compile_cached(args, return_type)
  File "/home/gmarkall/numbadev/numba/numba/core/dispatcher.py", line 155, in _compile_cached
    retval = self._compile_core(args, return_type)
  File "/home/gmarkall/numbadev/numba/numba/core/dispatcher.py", line 168, in _compile_core
    cres = compiler.compile_extra(self.targetdescr.typing_context,
  File "/home/gmarkall/numbadev/numba/numba/core/compiler.py", line 682, in compile_extra
    return pipeline.compile_extra(func)
  File "/home/gmarkall/numbadev/numba/numba/core/compiler.py", line 426, in compile_extra
    return self._compile_bytecode()
  File "/home/gmarkall/numbadev/numba/numba/core/compiler.py", line 490, in _compile_bytecode
    return self._compile_core()
  File "/home/gmarkall/numbadev/numba/numba/core/compiler.py", line 469, in _compile_core
    raise e
  File "/home/gmarkall/numbadev/numba/numba/core/compiler.py", line 460, in _compile_core
    pm.run(self.state)
  File "/home/gmarkall/numbadev/numba/numba/core/compiler_machinery.py", line 343, in run
    raise patched_exception
  File "/home/gmarkall/numbadev/numba/numba/core/compiler_machinery.py", line 334, in run
    self._runPass(idx, pass_inst, state)
  File "/home/gmarkall/numbadev/numba/numba/core/compiler_lock.py", line 35, in _acquire_compile_lock
    return func(*args, **kwargs)
  File "/home/gmarkall/numbadev/numba/numba/core/compiler_machinery.py", line 289, in _runPass
    mutated |= check(pss.run_pass, internal_state)
  File "/home/gmarkall/numbadev/numba/numba/core/compiler_machinery.py", line 262, in check
    mangled = func(compiler_state)
  File "/home/gmarkall/numbadev/numba/numba/core/typed_passes.py", line 396, in run_pass
    lower.lower()
  File "/home/gmarkall/numbadev/numba/numba/core/lowering.py", line 137, in lower
    self.lower_normal_function(self.fndesc)
  File "/home/gmarkall/numbadev/numba/numba/core/lowering.py", line 191, in lower_normal_function
    entry_block_tail = self.lower_function_body()
  File "/home/gmarkall/numbadev/numba/numba/core/lowering.py", line 217, in lower_function_body
    self.lower_block(block)
  File "/home/gmarkall/numbadev/numba/numba/core/lowering.py", line 231, in lower_block
    self.lower_inst(inst)
  File "/home/gmarkall/miniconda3/envs/numbacuda102/lib/python3.8/contextlib.py", line 131, in __exit__
    self.gen.throw(type, value, traceback)
  File "/home/gmarkall/numbadev/numba/numba/core/errors.py", line 765, in new_error_context
    raise newerr.with_traceback(tb)
numba.core.errors.LoweringError: Failed in nopython mode pipeline (step: native lowering)
Cannot cast slice<a:b> to Union[int64,slice<a:b>]: %".8" = extractvalue {i64, {i64, i64, i64}} %"inserted.f1", 1

File "repro.py", line 7:
def settuple(t):
    new_t = tuple_setitem(t, 0, t[1])
    ^

During: lowering "new_t = call $2load_global.0(t, $const6.2, $12binary_subscr.5, func=$2load_global.0, args=[Var(t, repro.py:7), Var($const6.2, repro.py:7), Var($12binary_subscr.5, repro.py:7)], kws=(), vararg=None, target=None)" at repro.py (7)

cc @itamarst

I don't think this code is a legal use of tuple_setitem. Looking at the docs:
https://github.com/numba/numba/blob/e7db1d9174f9ac329c161f3ac977972dcaa5ba66/numba/cpython/unsafe/tuple.py#L11-L22

The dtype of the tuple cannot be changed.

Is the key part. In the above t is a Tuple so it's dtype is a composed of the dtypes of its members (Union), altering the tuple to make it larger would alter the dtype. It fails at the cast because you can't cast a slice type to union.

The tuple is not being made larger, it's the same size.
Given a dtype of Union([A, B]), why shouldn't one be able to set a value of type A or B?

Lacking this functionality, it's impossible to construct tuples that are mixes of slices and integers, which means certain NumPy operations are impossible.

1. The tuple is not being made larger, it's the same size.

Apologies, you are correct, it is not altering size, but the dtype of the tuple members would be changing. I.e. first is becoming a slice?

2. Given a dtype of `Union([A, B])`, why shouldn't one be able to set a value of type `A` or `B`?

I think this is because at present Union is a type inference convenience, the lowered data structure has to be concrete and is stack allocated. In the above error there's {i64, {i64, i64, i64}}, i.e. first item is int64, second is 3 x int64 (slice), so you cannot set the first item to be a slice because it's type is int64. I also suspect there's some lowering/casting problem that needs looking at but don't think it would necessarily impact this.

Lacking this functionality, it's impossible to construct tuples that are mixes of slices and integers, which means certain NumPy operations are impossible.

What's the most minimal thing you are trying to do (just in pure python syntax)? Perhaps we can work something out.

I'm trying to implement take_along_axis. Two alternative implementations are either the example code in the notes here (https://numpy.org/doc/stable/reference/generated/numpy.take_along_axis.html) which uses mixed int/slice tuples, or the actual implementations which I believe (but could be wrong) relies on fancy indexing Numba doesn't support (https://github.com/numpy/numpy/blob/623bc1fae1d47df24e7f1e29321d0c0ba2771ce0/numpy/lib/shape_base.py#L29).

I think there's a bug in tuple_setitem, this patch yields the error I'd expect:
diff --git a/numba/cpython/unsafe/tuple.py b/numba/cpython/unsafe/tuple.py
index 7e30b07..5777ed0 100644
--- a/numba/cpython/unsafe/tuple.py
+++ b/numba/cpython/unsafe/tuple.py
@@ -29,7 +29,7 @@ def tuple_setitem(typingctx, tup, idx, val):
         builder.store(val, offptr)
         return builder.load(stack)

-    sig = tup(tup, idx, tup.dtype)
+    sig = tup(tup, idx, val)
     return sig, codegen

OP now produces:
numba.core.errors.LoweringError: Failed in nopython mode pipeline (step: native lowering)
cannot store {i64, i64, i64} to i64*: mismatching types

which matches what is going on.

I think I can manage to do what I want to do if I can copy an integer into an index in the tuple that already has an integer, but that doesn't work either:
from numba import njit
from numba.cpython.unsafe.tuple import tuple_setitem

@njit
def settuple(t, i):
    return tuple_setitem(t, i, 456)

t = (123, slice(None, None, None))
print(settuple(t, 0))

Notice that I'm trying to override 123 with 456, but it still doesn't work.

numba.core.errors.LoweringError: Failed in nopython mode pipeline (step: native lowering)
Cannot cast Literal[int](456) to Union[int64,slice<a:b>]: i64 456

File "example2.py", line 7:
def settuple(t, i):
    return tuple_setitem(t, i, 456)
    ^

During: lowering "$10call_function.4 = call $2load_global.0(t, i, $const8.3, func=$2load_global.0, args=[Var(t, example2.py:7), Var(i, example2.py:7), Var($const8.3, example2.py:7)], kws=(), vararg=None, target=None)" at example2.py (7)

I don't think the proposed change is correct, when I try the second example (just above) with that change, there's what is probably an AttributeError ('Argument' object has no attribute 'constant').

@itamarst I think this does what you are looking for RE take_along_axis:
import numpy as np
from numba import njit
from numba.extending import overload
from numba.cpython.unsafe.tuple import tuple_setitem

# Translated from/inspired by the notes section of:
# https://numpy.org/doc/stable/reference/generated/numpy.take_along_axis.html
# Source reference:
# https://github.com/numpy/numpy/blob/623bc1fae1d47df24e7f1e29321d0c0ba2771ce0/numpy/lib/shape_base.py#L88-L107
# NumPy source license: https://github.com/numpy/numpy/blob/main/LICENSE.txt

@overload(np.take_along_axis, jit_options={'boundscheck':True})
def ol_take_along_axis(arr, indices, axis):

    n = arr.ndim
    t = tuple([((0,)*a, (0,)*b) for a, b in [(x, n - x - 1) for x in range(n)]])

    def impl(arr, indices, axis):
        z = t[axis]
        Ni = z[0]
        for i in range(len(Ni)):
            Ni = tuple_setitem(Ni, i, arr.shape[i])
        M = arr.shape[axis]
        Nk = z[1]
        for i in range(len(Nk)):
            Nk = tuple_setitem(Nk, i, arr.shape[axis + i])

        J = indices.shape[axis]
        out = np.empty(Ni + (J,) + Nk, arr.dtype)

        for ii in np.ndindex(Ni):
            for kk in np.ndindex(Nk):
                np_s_ = (slice(None, None, None),)
                a_1d       = a      [ii + np_s_ + kk]
                indices_1d = indices[ii + np_s_ + kk]
                out_1d     = out    [ii + np_s_ + kk]
                for j in range(J):
                    out_1d[j] = a_1d[indices_1d[j]]
        return out
    return impl

a = np.arange(24).reshape((3, 2, 2, 2))
ai = np.argsort(a, axis=1)

@njit
def foo(a, ai):
    return np.take_along_axis(a, ai, axis=1)

for x in range(a.ndim):
    print(foo(a, ai))
    print(foo.py_func(a, ai))

Thank you! That needs a bunch of additional changes (e.g. lowering tuple_setitem fails if compiler notices it's being called on empty tuple, even if in practice the for loop actually prevents it from being called—reproducible with axis=0) but I might I have some solutions for that. Maybe :grinning:

(Turns out the real take_along_axis and the sketch in NumPy docs that is based on do not have the same behavior :cry:)

(Turns out the real take_along_axis and the sketch in NumPy docs that is based on do not have the same behavior cry)

That's a shame. If this function is to be supported, I guess this is the first thing to work out.

Further testing suggests I was at fault, not NumPy: I forgot to rename a variable, so it got bound to variable from nested parent function. So I hope to have PR of initial take_along_axis in not too distant future.
But I still want better tuple support :(


feat: Add google-cloud-secret-manager requirement

Hello, I would like to add google-cloud-secret-manager as a standard requirement to viur-core, as several projects already use it and it could be useful for some standard extensions soon.

If you provide a low-level function that returns the value of a secret with one call and then uses this library, I would have no problem with that. But I think this is wrong here in the core. But we could add it in the base as a preset.

OK you're right. Maybe a utility function satisfies for that.

@sveneberth I've modified the pull request to provide a secret module which cointains a get function for Google Cloud secret manager access.

@sveneberth I've updated the PR, can you please re-review?


Manage updating

Updating using wex wex/update, should :

Cleanup old docker images
Update running site

We may have a wex site/wexUpdate method to update each site
Each site should save current using version

Keep a list of incremetial updates for sites

This method mais be a common update system shared also with common sites management (regarding that wex scripts has the same structure as any managed sites).

Done with wex core/update and core migrations management.


missing download files

Description
There seem to be some missing downloads.
The latest download that works is https://static.structurizr.com/download/structurizr-lite-3104.war
3105, 3112, 3116, 3122, 3124 are all missing in s3.
The docker images are published with these missing versions at https://hub.docker.com/r/structurizr/lite/tags
Steps to reproduce

Screenshot
No response
Code sample
No response
Configuration
No response
Severity
Minor
Priority
Low
Resolution
I have no budget, please fix this for free
More information
No response

Releases can now be found at https://github.com/structurizr/lite/releases instead of S3.


Import medias using --dry-run

There is a bug in ideascube: we cant delete all medias from the mediacenter with a batch command. So we can't afford to import medias without using the --dry-run option of the import_media command. When we'll have the possibility to erase media, we will be able not to use --dry-run. Even if I rezally think that we should not ansible medias import.

Related to ideascube/ideascube#685

This is an ideascube related issue, not an ansiblecube one.


Bug Rending

Rendering

Gives this result:

Please try it in the playground.
Playground

Looks like it is caused by the regular expression. But it is too complicated to fix:
const HTML_BLOCK_ELEMENT_R =   /^ *(?!<[a-z][^ >/]* ?\/>)<([a-z][^ >/]*) ?([^>]*)\/{0}>\n?(\s*(?:<\1[^>]*?>[\s\S]*?<\/\1>|(?!<\1)[\s\S])*?)<\/\1>\n*/i
Can the author fix this issue?

It resolves the issue mentioned in the original ticket, but failed for test below and generate string:

it('', () => {
render(compiler(

))
expect(root.innerHTML).toMatchInlineSnapshot(`

`)

})


Updated 11_technical_risks

I think it is fine but I get a problem in the continuous integration with Travis so I still don't do the merge.


elasticsearch 2.x changed Indices APIs

only needed for ES >= 2.0

As a note: I'm not doing much to this repo in terms of major version enhancements for ElasticSearch, since their Curator python scripts manage this same set of needs.
@s4ms0n - This update is great, but it has backwards compatibility issues, I realize it's likely working for you as is, but I want to set a flag of some sort so that we can default to the 1.x behavior unless someone specifically configures 2.x support - which would then update that problematic endpoint. I'll get back to this eventually, but if you can add a flag or a default config such that anyone currently using these scripts from this repo (not a good implementation, but that's another issue altogether) will gain the 2.x support without breaking the 1.x functionality - i'll merge away.

Closing this, the updated cat api call (202f439) supports both 1.x and 2.x, giving us a broader compatibility spectrum.


Include instructions to install Azure DevOps extension for Scans tab

It was not clear to one of the teams onboarding that they had to install the Scans viewer build tab extension to visualize failures in Azure DevOps build results page.
Recommendation:
Update to include this clearly as a step with link to Azure DevOps marketplace.

since this is closed marking it as resolved


buildNpmPackage: allow passing npmDeps

Description of changes
This PR allows passing npmDeps to buildNpmPackage. My main usecase is when building several packages inside a workspace, to not have to recompute several times the npm dependencies.
Things done

Built on platform(s)

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

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] 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/)
23.11 Release Notes (or backporting 23.05 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

[ ] Fits CONTRIBUTING.md.

@lilyinstarlight what do you think ?
I don't think this generates any rebuild.
if that is okay with everyone, I would like to merge this in a couple of days.


Question: is Amphetamine Enhancer a thing?

Hello @x74353
Fist of all, thank you so much for Amphetamine. It's just perfect!
I'm coming from https://iffy.freshdesk.com/support/solutions/articles/48000966632-setting-up-amphetamine-enhancer and.. well the repo is empty with no releases attached.
So, am I missing something?
Thanks

Nevermind, I see from

When Amphetamine Enhancer become available, it will be available on Github.

and

Amphetamine Enhancer is a forthcoming application that expands several core Amphetamine features.

that it's not been yet released.

Thanks for the kind words about Amphetamine. The Enhancer isn't quite ready yet. Fingers-crossed Apple will notarize it when it's finally ready! I'm in the final stretch (I hope).


Prototype making the experiment (model train) url available

So we can address https://github.com/layerai/sdk/issues/314
Demo

WIP still but for tracking purposes:
Fixes https://github.com/layerai/sdk/issues/314

closing in favour of https://github.com/layerai/sdk/pull/353


feat: implement t-test paired stored proc

@boaguilar I removed the N > 0 check for the t_test_paired, as this was consistent with how we'd previously implemented the t_test (students) UDF. I don't have any opinion one way or another — if the check is present, the query will just return zero results; otherwise, it'll return a struct with the values shown below (including NaN).
I'm not really sure what's more "correct", though maybe easier for the user to handle the NaN case since the result always has the same shape?

@boaguilar can you give an approval on this before I merge?

@boaguilar can you give an approval on this before I merge?

Hi Ian and Ross,  I think this make sense so please merge the changes.
Boris


How to make item-toggle in form demo?

Hopefully this is an easy one.
The form demo has a toggle on the "Forms" page:
http://meteor-ionic.meteor.com/forms
Which looks like it comes from here:  https://github.com/meteoric/demo/blob/master/client/templates/forms/forms.html#L12
How would you make that control w/o quickforms?

It doesn't require any JavaScript, just HTML and CSS:
http://ionicframework.com/docs/components/#toggle

Nice!  Thanks Nick!


Dotted Stroke Style/Line Dashes

Use ctx.setLineDash and ctx.lineDashOffset to create a dotted stroke style, we need a method to set this for basically every shape
See:
https://developer.mozilla.org/en-US/docs/Web/API/Canvas_API/Tutorial/Applying_styles_and_colors#using_line_dashes

Completed! setLineWidth now is setLineStyle with parameters (lineWidth, dashes) where lineWidth is a number and dashes is an array of numbers with length of dash followed by the gap amount [5, 10, 5, 20, 10, 5]
In addition, you can set the dash offset by setting the Sprite property dashOffset to any number.


[DOCS] Add info about Twitch streaming on README

Description
I’ve been streaming about this project on Twitch at twitch.tv/ykdojo. It’d be good to have info about that on README.

Hai! i've been adding Twitch link, see my pull request

@Rahmattullah13 thank you I just merged it #202


Invalid document type: <class 'llama_index.readers.schema.base.Document'>  examples/chatbot/Chatbot_SEC.ipynb    Running Error

I am trying to run examples/chatbot/Chatbot_SEC.ipynb, and getting error below:
code:
cur_index = GPTSimpleVectorIndex(doc_set[year], chunk_size_limit=512)
error:
Invalid document type: <class 'llama_index.readers.schema.base.Document'>.

My env is python 3.8.5
gpt-index==0.4.32
langchain==0.0.116
Does any one encounter the same issue? Is there anyone know how to fix it? Any help will be appreciated!

I have this error. with Python 3.8.10, test in google colab.
Requirement already satisfied: rich==13.0.1 in /usr/local/lib/python3.9/dist-packages (13.0.1)

I have this error. with Python 3.8.10, test in google colab.
Requirement already satisfied: rich==13.0.1 in /usr/local/lib/python3.9/dist-packages (13.0.1)

But as the screenshot showed, you installed rich 13.3.2, not  13.0.1.
You can try to uninstall the rich 13.3.2 and install the correct version
pip uninstall rich  pip install rich==13.0.1

This should be fixed in the latest versions of this tutorial. Please re-open if I am wrong!

I'm getting the same error:
python 3.11.9
llama-index 0.10.27


Create awesome ai tools website

what should be its tech stack?

We can use docusaurus. I built a template

i have added a website, you can find it in the about section

I'd like if you help me with styling using bootstap5, you can find the files in the website branch

Okay, I will check it ...

awesome.aacoder.me

see the website branch in this repo for the code


Splunk-sdk-python Installation failed

While trying to install splunk-sdk-python ON Windows 7 64-bit. I have followed the approaches suggested in http://dev.splunk.com/view/python-sdk/SP-CAAAEDG

Using pip on windows.
Command used: python.exe -m pip install splunk-sdk-python
Error: print "Could not import coverage. Please install it and try again"
SyntaxError: Missing parentheses in call to 'print'.
Installing Python egg from pip.
Same error persists.
Cloning Splunk-sdk-python from git.
After downloading the zip from github and extracting it.
Running the command: python setup.py throws the same error.

Please help me in resolving the above issue.

Hi @sunnyanjani,
The SDK is not compatible with Python 3, you'll need to install Python 2.7 in order to use it.


Documentation example and integration

Hi,
I am a beginner in go, but would love to use something in golang for my ember projects.
But as i am a beginner in go, never managed to make this as a backend. Also trying some frameworks in go, seem very nice, but how would i integrate this in revel or beego or goji or gorilla ?
So, question : Is there an example for this with database ?
Also , is it possible to integrate this into revel or beego, etc perfectly ?
Thanks.

Hi,
we currently do not have a complete example.
Beego or Revel are complete frameworks for rendering a static website, as far as I know.  On that you can call the Handler() method, to retrieve a standard go http.Handler that can be used everywhere. You could for example do your own ServeMux and use our api2go API and one of your favored frameworks together, see: https://godoc.org/net/http#ServeMux
Another approach would be to completely configure the Routes in the other Framework and just use our Marshal/Unmarshal Methods.
The Idea behind the API was to get a quick start into setting up a complete json only api, because we also use ember with ember-json-api in our frontend and need nothing else from the backend.
You should be able to use any database you like with our project, as long as you keep our convention for the related structs. So you always have Fields for the IDs and the related structs as mentioned in our Readme.
So: What are you planning to do? Which database and what else does your backend need apart from jsonapi compliant json generation?

Hi,
I managed to do the Marshal/Unmarshal in goji, but the routes would be great also.
What i would need for my backend would be : jsonapi json marshlling, routes, controllers ( done and done for this ), database ( maybe gorm is the best go orm right now, or beego orm ), some sort of authoring and business logic services support.
I came from the rails world. Right now i am using sails.js for my backend. Do you plan to expand api2go? Or is it going to be a lightweight framework/library ?
I need to increase my golang skills before i can do beego integrations like you said. Sorry if what i ask is very easy to do, i am beginning at golang.
Thanks!

hi, yes for sql databases I can recommend gorm. I almost tried them all. In the go world everything is pretty new and you won't find a feature complete orm that can do everything at the moment and also not a large framework like rails afaik. It's more around small libraries that you can combine.
At the moment we do not plan to make more out of api2go, but if you have some great ideas what we could do, share them with us :)
For the business logic and services stuff: I am facing that problem too where you have a lot of dependencies in your code and at the moment I am manually instantiating everything and doing DI by hand. This little library here looks pretty awesome to do it automatically because the manual stuff is always error prone: https://godoc.org/github.com/facebookgo/inject

I will close this for now.


Show date for the migrations that have already run

We can show the execution date for executed migrations. It's too bad we can't show the creation date of migrations, but the execution date helps a lot.
The date seems to be an extra field and cannot be fetched that easily. I'm hopping that FM's GetValue() method might be helpful in this.

Done


Currency converter

Describe the project you want to add with tech stack
A website that converts the currency of one country to the currency of another currency.
Expected behavior
It will convert the currency of a country to the currency of another country.

I would like to contribute to this issue as a part of @GSSOC'23
Please assign it to me. Thank you.

I am interested to contribute to this issue. Kindly allow me to contribute to your project.

Please assign me this issue so that I can resolve it under GSSOC-23

Respected sir,
I have prior experience in development of webpage and has made a calculator web page in my 2nd year. I want to contribute in it.Please assign it to me.

Project already present


Split rejectTx logic to a separate function

Split reject logic to a separate function in order to be re used in rejectPendingTxs and reject_tx.test
This way whenever we need to fix this method we will only have to change it in one place. While doing this I also detected that we weren't waiting for the correct transaction to appear on the list after rejecting by checking the nonce, and then checking the type, which caused some errors whenever the backend wasn't fast enough

Wow that was amazing.. so is this or can it be a new auth/json token


Filter by "IN" criteria behaves badly

Describe the bug
Attempting to filter table view using "IN" erases column menu and filter criteria
To Reproduce
Please see attached screen capture
Expected behavior
Results are filtered as with "=", "LIKE", etc.
Screenshots
If applicable, add screenshots to help explain your problem.
Screencast from 10-05-2023 05:00:55 PM.webm
Application:

App client: Antares
App version: 0.7.17
Installation source: Ubuntu Software

Environment:

OS name: Ubuntu
OS version: 20.04.6
DB name: MySQL
DB version Community 5.7.42

It works if there is no comma-separated list, but then "IN" is useless because it is the same as "="

Hi @bart-schaefer,
thanks for the report.
You will find the fix in next release.


fixed typos in convo.say() and convo.ask() references

a couple of little typos in the docs here :)

thank you @fletchrichman


Deal with syntax errors in coloring regex files

If there are syntax errors in coloring files (regcomp returns a non-null value), e exits abruptly without a message.
https://github.com/hellerve/e/blob/0e6ed8367b75805ff7341b528a0ac3c68c2a00b9/src/syntax.c#L31

Thanks for reporting this!
I briefly talked about this in #13. I will write a better error handler at some point, but at the moment I’m sadly a bit tied up by work.

I worked on this a bit. Now it at least prints an error message before dying its graceless death.
Example: Syntax: encountered an error in pattern "foobar(": parentheses not balanced
It still leaks memory, though, which is not great.

I’ve openend a PR on this issue. @benob: could you kindly review whether this is what you would want as per error handling?

It's great, thanks. Maybe a mention of the file name and line number would make it even more user friendly ;)

Done! :)


[TF 2.0 API Docs] tf.image.image_gradients

URL(s) with the issue:
https://www.tensorflow.org/versions/r2.0/api_docs/python/tf/image/image_gradients
https://github.com/tensorflow/tensorflow/blob/master/tensorflow/python/ops/image_ops_impl.py
Description of issue (what needs changing):
Usage example
No usage example provided
Submit a pull request?
Yes
https://github.com/tensorflow/tensorflow/pull/30446

@imransalam Thanks for contributing through PRs.

Automatically closing this out since I understand it to be resolved by the https://github.com/tensorflow/tensorflow/pull/30446 (merged already), but please let me know if I'm mistaken.Thanks!


Prevents loop error for function FoundationPress_comments()

Using Xampp server I get the error: Fatal error: Cannot redeclare FoundationPress_comments() (previously declared in
This patch will fix the problem but what are you thoughts on moving the function to /library/foundation.php and using a new Class function to instead

Nice :+1:  I think it makes sense moving the function to /library/foundation.php. You fix?

I will take a look tomorrow its late for me here in the UK
Best Regards
Phill Booth. Theme Tec
Please remember add my email to your address book.
web: http://www.themes.technology
email<EMAIL_ADDRESS><EMAIL_ADDRESS>portfolio: http://themeforest.net/user/phillbooth/portfolio?ref=phillbooth
time zone: GMT+0 London, United Kingdom
On 15 January 2015 at 17:56, Ole Fredrik Lie<EMAIL_ADDRESS>wrote:

Nice [image: :+1:] I think it makes sense moving the function to
/library/foundation.php. You fix?
—
Reply to this email directly or view it on GitHub
https://github.com/olefredrik/FoundationPress/pull/183#issuecomment-70130032
.

I have now done a new pull request for this


FAILURE: Build failed with an exception. :cloudfoundry-identity-server:compileJava:Could not resolve org.opensaml:opensaml:2.6.6.

UAA Version:74.30
FAILURE: Build failed with an exception.

What went wrong:
Execution failed for task ':cloudfoundry-identity-server:compileJava'.

Could not resolve all files for configuration ':cloudfoundry-identity-server:compileClasspath'.
Could not resolve org.opensaml:opensaml:2.6.6.
Required by:
project :cloudfoundry-identity-server > org.springframework.security.extensions:spring-security-saml2-core:1.0.10.RELEASE
Skipped due to earlier error

Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

see https://github.com/cloudfoundry/uaa/issues/1519


Players cannot loot or trade from an actor or linked token

Describe the bug
Players cannot loot or trade from an actor or linked token: but can from an unlinked token. I haven't been able to find anywhere if this is by design or not, so apologies if it is. All my players have their characters configured properly. FWIW I am trying to do this so each player can have their own backpack to store things in and drop in combat as they please.
To Reproduce
Steps to reproduce the behavior:

I log in as a player, and having seen that the Backpack actor is visible to me, open its sheet,;
Items in the loot screen, when clicked, DO transfer to the middle, but clicking confirm has no effect.
I do not get any console errors when clicking confirm
I do however, get yellow some console messages when opening the sheet:

OTS parsing error: cmap: Failed to parse table
foundry.js:3053 Foundry VTT | Rendering LootSheetNPC5e
PermissionHelper.js:157 lootsheetnpc5e | PermissionsHelper | getEligablePlayerActors | 5 players with eligable characters found.
game:1 Failed to decode downloaded font: https://----------------[]removed by me]
game:1 OTS parsing error: cmap: Failed to parse table

Expected behavior
Lootable actor sheet
Screenshots
If applicable, add screenshots to help explain your problem.
Desktop (please complete the following information):

OS: windows 10
Browser: Brave
Version: couldn't find easily, apologies

Additional context

Setting players' permissioon to owner does not help, and in fact completely removes the ability to transfer items *to the middle8 on the loot screen.
I suspect some other module is the cause, as I am running quite a few. Here is the list:
`Active Modules:

About Time v;
Absolute Hotbar Keybindings v;
Actually Private Rolls v;
Advanced Macros v;
Advanced Spell Effects v;
Argon - Combat HUD v;
Autocomplete Inline Properties v;
Automated Animations v;
Auto-Rotate v;
Better Text Drawings v;
Combat Carousel v;
Combat Numbers v;
Combat Utility Belt v;
Custom Fonts v;
D&D 5th Edition PHB Journal Styling v;
DFreds Convenient Effects v;
DFreds Effects Panel v;
Dice Tray v;
Drag Upload (Get Over Here!) v;
Dramatic Rolls v;
Drop My Torch v;
Dynamic effects using Active Effects v;
Easy Target v;
Faster Audio Preload v;
Forien's Quest Log v;
Foundry Community Macros v;
FoundryVTT Mount Up! v;
FXMaster v;
GM Screen v;
Initiative Quick Change v;
Item Macro v;
JB2A - Jules and Ben's Animated Assets - Free Content v;
Less Fog v;
Let Me Roll That For You! v;
lib - Color Settings v;
libWrapper v0;
Lock View v;
LootsheetNPC5e v;
Midi QOL v;
Minimal UI v;
Monk's Enhanced Journal v;
Moulinette Core v;
Moulinette Sounds & SoundPad (module) v;
Patrol v;
Perfect Vision v;
Pings v;
Playlist Importer v;
Polyglot v;
PopOut! v;
Search Anywhere v;
Sequencer v;
Settings Extender v;
Shared Vision v;
Simple Calendar v;
Smart Doors v;
socketlib v;
SoundBoard by Blitz v;
SoundBoard Pack - Blitz Free Pack v;
SoundBoard Pack - Community v;
Splatter v;
Tabbed Chatlog v;
Tagger v;
Tidy5e Sheet v;
Tidy UI - Game Settings v;
Token Attacher v;
Token Info Icons v;
Token Z v;
Trigger Happy v;
Warp Gate v;
Window Controls v;
Inactive Modules:
Ammo Tracker v;
Better Roofs v;
Class Exposure v;
Class Leveling Editor v;
D&D Beyond Importer v;
DFreds Droppables v;
DnD5e Helpers v;
Dnd5e Helpers Cover Expansion v;
Ensemble - drag and drop your sound files v;
Foundry Community Tables v;
Hero Creation Tool for DnD5E v;
Hey, Wait! v;
Hidden Soundtracks v;
Hurry Up! Combat Timer v;
Inline Webviewer v;
Item Piles v;
Loot populater NPC | 5e v;
Maestro v;
Magic Items v;
Not Your Turn! v;
Playlist Drag and Drop v;
Roll Table from Sidebar and Journal v;
RPG Styled UI for Foundry VTT v;
SoundFx Library v;
SWADE ES, CA, GL, EU translation v;
Tablesmith like Tables v;
The Furnace v;
Times Up v;
Token Auras v;
Tokenizer v;
Turn Marker v;`
Thanks in advance

I will take a look at this.
This is not by design. But could be a side effect of some precautions.
There is another issue open wich maybe related.
I have to test this a bit before I can say more. Please be patient. :)


[Question]: What are the document content format requirements for different document parsing methods, and is there a documentation that explains this?

Describe your problem
What are the document content format requirements for different document parsing methods, and is there a documentation that explains this?


improve plugin system

I have folks who want to be able to do this with the plugin system. It feels like what would really help with this is to be able to hook into the styles before the selector is generated and/or return more selector/style pairs from a plugin.

I'm usually wary of plugins that run before everything else, because that can usually be done on the consumer side. Consider the example you gave me, you could rewrite it as this
const Bordered = glamorous.div(
  {
    border: '1px solid',
  },
  props => glamor.css({
    '.ltr &': props,
    '.rtl &': rtlConvert(props),
  })
)

However, I see the value, and I'll definitely add it when I rewrite the plugin system, I hope the workaround above helps till then.
Adding to backburner and closing issue, will revisit on next major revision.

The idea was to allow a centrally-configured set of RTL transformations rather than having to modify every single component, so the workaround isn't really an option.  Looking forward to seeing the next generation of plugin APIs. (In this case, all we'd really need is to be able to return an array of { selector, styles } objects instead of one.)

Noted. Another workaround could be to have a plugin system at glamorous' level that does this, and then when glamor gets the feature, you could just delegate to it.

Happy to look at a PR to add a plugin system to glamorous. I'm hesitant to do so though considering glamor already has one 🤔

I'm also highly interested in a plugin system, exactly for the RTL transformation reason.
And I'm not using the glamorous. So looking forward to the plugin system or at least built in RTL transformation using RTLCSS


Dropdown menu for navigation parent / child pages

Is it possible to add a dropdown menu for the navigation with parent / child pages?

It's possible but it'll require some tinkering for the navigation area which unfortunately I haven't got time to do so lately.
For now you can use form element on the nav area to have the same effect as a dropdown menu as what PicnicCSS documentation recommend, or I'd say a select element abuse which is semantically super wrong and not recommended. Example:
`

Parent Page
Child 1
Child 2

`
Or the method I highly recommend if you're willing to invest some time to rewrite the nav area is by using this site nav area as a start for a rewrite since they're also using PicnicCSS: https://gyshido.com/
Or by writing a detached from PicnicCSS dropdown menu by using many examples on the web, such as this: https://css-tricks.com/solved-with-css-dropdown-menus/
Hope this information helps!


Unable To Process Deleted Decisions

I started seeing this error in my logs a couple of days ago.
 level=error msg="account redacted, unable to process deleted decisions: bulk remove keys: 'namespace not found' (10013)"
 level=error msg="The internal cache of the bouncer is now likely out of sync, and likely needs a restart"
 level=error msg="If this error persists, please open an issue on https://github.com/crowdsecurity/cs-cloudflare-worker-bouncer/issues"

When I restart the bouncer it starts working again for a about a day or so then it starts throwing this error message again.

Hello,
Do you have another script or program running simultaneously (even another instance of the bouncer) that would perform operations on the KV store?
The error makes me think the KV namespace somehow got deleted (the bouncer will only try to delete it on shutdown or startup to clean up potential leftover resources).
If you go to the cloudflare console when this error occurs, do you see the CROWDSECCFBOUNCERNS namespace ?

@blotus Yes I have two servers protecting different sites. Next time this happens I can see if the CROWDSECCFBOUNCERNS namespace is gone or not. Currently, it is there because I restarted the services.

Are those two servers interacting with the same Cloudflare account ?
If so, that's probably the issue. I don't think we ever tested this configuration, but I would be very surprised if it worked.
The name of the KV store is currently hardcoded in the bouncer, meaning that when a new instance starts, it will see the existing namespace and try to delete it.
You can test this by just restarting one of the two bouncers, and the other one should start to misbehave the next time it tries to delete a decision.

@blotus It looks like it started happening again on one server and not the other one yet. These are indeed both on the same Cloudflare account.
server 1
 systemctl status crowdsec-cloudflare-worker-bouncer.service
● crowdsec-cloudflare-worker-bouncer.service - CrowdSec bouncer for Cloudflare
     Loaded: loaded (/usr/lib/systemd/system/crowdsec-cloudflare-worker-bouncer.service; enabled; preset: disabled)
     Active: active (running) since Wed 2024-09-18 09:28:16 EDT; 6h ago
    Process: 806863 ExecStartPre=/usr/bin/crowdsec-cloudflare-worker-bouncer -c /etc/crowdsec/bouncers/crowdsec-cloudflare-worker-bouncer.yaml -t (code=exited, status=0/SUCCESS)
   Main PID: 806874 (crowdsec-cloudf)
      Tasks: 14 (limit: 74593)
     Memory: 65.7M
        CPU: 1min 1.097s
     CGroup: /system.slice/crowdsec-cloudflare-worker-bouncer.service
             └─806874 /usr/bin/crowdsec-cloudflare-worker-bouncer -c /etc/crowdsec/bouncers/crowdsec-cloudflare-worker-bouncer.yaml

Sep 18 09:28:16 overwatch.garaventaville.com systemd[1]: Starting CrowdSec bouncer for Cloudflare...
Sep 18 09:28:16 overwatch.garaventaville.com systemd[1]: Started CrowdSec bouncer for Cloudflare.

level=error msg="account , unable to process deleted decisions: bulk remove keys: 'namespace not found' (10013)"
level=error msg="The internal cache of the bouncer is now likely out of sync, and likely needs a restart"
level=error msg="If this error persists, please open an issue on https://github.com/crowdsecurity/cs-cloudflare-worker-bouncer/issues"

Server 2
 systemctl status crowdsec-cloudflare-worker-bouncer.service
● crowdsec-cloudflare-worker-bouncer.service - CrowdSec bouncer for Cloudflare
     Loaded: loaded (/usr/lib/systemd/system/crowdsec-cloudflare-worker-bouncer.service; enabled; preset: disabled)
     Active: active (running) since Wed 2024-09-18 12:20:53 EDT; 3h 24min ago
    Process: 2624 ExecStartPre=/usr/bin/crowdsec-cloudflare-worker-bouncer -c /etc/crowdsec/bouncers/crowdsec-cloudflare-worker-bouncer.yaml -t (code=exited, status=0/SUCCESS)
   Main PID: 2639 (crowdsec-cloudf)
      Tasks: 10 (limit: 23106)
     Memory: 76.2M
        CPU: 44.371s
     CGroup: /system.slice/crowdsec-cloudflare-worker-bouncer.service
             └─2639 /usr/bin/crowdsec-cloudflare-worker-bouncer -c /etc/crowdsec/bouncers/crowdsec-cloudflare-worker-bouncer.yaml

time="2024-09-18T15:25:37-04:00" level=info msg="Received 150 deleted decisions"
time="2024-09-18T15:25:37-04:00" level=info msg="Deleting 150 decisions" account=
time="2024-09-18T15:25:37-04:00" level=info msg="Deleted 150 decisions" account=

I still see the CROWDSECCFBOUNCERNS KV as seen in the attached screenshot.

This will be unsupported to have 2 cloudflare workers interacting with the same account, you can already define multiple zones within one configuration file (hence 2 should be not needed). As pointed out by @blotus since the second one will see the same name property it will delete and publish a new namespace which will alter the generated ID. When the first one uses the old ID property it has in memory to update the properties it will hit an issue that the namespace doesnt exist anymore.
The fix is to use one remediation and define multiple zones within the same configuration file.

Thank you @LaurenceJJones I will give that a try.


New Features + Bug Fix

bug fix: Replaces illegal characters in github issue title for creating vault file name to allow for more robust naming conventions in issues. Saves original issue name in frontmatter for when pushing back to github
feature: pulling issue info no longer overwrites existing file properties for when using plugin on files created via templates
feature: modify files using app.vault.process method so corresponding links in the vault are updated
todo: bump version if necessary

no worries, I appreciate the feedback! I should hopefully get to these this weekend


Song: enforce order artist - title in get_song_dbus()

Some players report title before artist. That leads to song = titel - artist.
This PR makes sure it's always artist - title

LGTM :+1:


Cover costs top up

Think we need to make the change in amount more obvious, so that it doesn't appear sneaky.
Can we animate the change in some way, by adding it as an amount below the check box?

closing for now, we can come back to this if it becomes a problem.


Add effect for Marshal Dedication

Fix https://github.com/foundryvtt/pf2e/issues/2291

This isn't correct, exactly. The initial effect belongs to an aura, which doesn't yet have system support. Additionally, the same aura has other benefits given other feats, making "Effect: Martial Dedication" a very confusing name.

Do you suggest to rename effect or do you mean that it must be implemented other way?
According to Archives of Nethys only two feats give additional benefits to marchal's aura: Dread Marshal Stance and Inspiring Marshal Stance. Both have their own effects in compendium.
So we can rename the effect to Effect: Marchal's Aura. Players could apply it and additionally apply and change stances' effects.

Superseded by #2869


Mobile Emulator Provider registration for page component

pages with page components derived from core/wcm/components/page/v1/page do not show the "Emulator" button in the page editor, some other features do not work as well then.
registering the resource type as mobile emulator provider fixes the problem.

Wouldn't the expectation be that the site's config does this against their proxy components as is in the case in we-retail (https://github.com/Adobe-Marketing-Cloud/aem-sample-we-retail/blob/master/config/src/content/jcr_root/apps/weretail/config.author/com.day.cq.wcm.mobile.core.impl.MobileEmulatorProvider-we-retail.xml) ?

The downside of doing this is that it forces the use of the emulator on sites which may not want to use it. I'm not sure this is a huge downside, but it is one.

AEM 6.3 OOTB already contains such a registration for the included page component {{wcm/foundation/components/page}}.
why not for the page component from the core components? this simplifies the setup of a new project. if its forgotten the layout mode can still be opened, but is subtly broken (e.g. device selector is shown, but no device can be selected)
what is the use case of using the core component page component without this registration?

bq. The downside of doing this is that it forces the use of the emulator on sites which may not want to use
i agree for older AEM versions. but for AEM 6.3 for example the emulator is even shown e.g. when switching to layout mode (and stays visible when switching back) without this registration - but it's broken.
perhaps this is a bug in AEM.

Codecov Report

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

@@            Coverage Diff            @@
##             master      #44   +/-   ##
=========================================
  Coverage     82.84%   82.84%
  Complexity      329      329
=========================================
  Files            29       29
  Lines          1230     1230
  Branches        207      207
=========================================
  Hits           1019     1019
  Misses           84       84
  Partials        127      127

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 ce950bc...a526a9a. Read the comment docs.

@stefanseifert Thank you for the contribution!
Indeed in 6.3 it make no sense at the moment to provide no config. The broken emulator will fixed in one of the next Cumulative Fix Packs for 6.3.


Continuous Deployment with Shiny Proxy

Thanks for this tool - looks like a really great open source edition to deploying shiny apps in a scalable way!
Having gone through the docs I can't see anything on how continuous deployment would work with shiny proxy.
My question is say you have a server with 3 apps up and running and you want to update an app or publish a new app is there a way to do this without stopping the service, updating the yml and restarting it?
I tried updating the application.yml on a running instance but this didn't do anything (as expected). Is there a way to update it whilst its up?

update the app should basically no problem I guess because that's how shiny itself works. However, publishing a new app w/o interrupting is in doubt. I remember that shinyproxy do not support ad-hoc reloading the application.yml.
Well, I'm not the expert. Welcome to correct me...

No, it's not possible with this release:
https://support.openanalytics.eu/t/adding-new-applications-without-restarting-shinyproxy/200

You’re right. I forgot the app in shinyproxy is bundle into the docket image. It’s the shinyserver that can update / add the apps in real-time.

Updating an app is indeed possible without downtime, by building a new docker image. ShinyProxy will automatically use the latest image build, unless you specify an image version in your yml.
Adding new apps is not possible, however, because reloading the yml at runtime is a tricky concept. It makes sense for the apps section, but other config is not straightforward to re-apply; e.g. the authentication-related sections.
That being said, we are trying to add more flexibility in this regard in the next major release of ShinyProxy. There will be support for runtime parameters, such as the amount of RAM a proxy is allowed to use. It will also be possible to launch a custom app spec, but the details of this have not yet been drawn out.

Thanks for all the replies. Good to know that building new docker image updates an existing app and the current difficulties in updating yml on the fly. Look forward to the next major release!