support new openai developer role

Testing done:

Tested all updated providers

Related Issues:

#823

Hey @narengogi - We also have a openai-base provider which is reused for all OpenAI compatible providers. We might also have to handle the new role because most of the providers have not yet announced the support for the new developer role.
Maybe we can add a setting called, isDeveloperRoleSupported in openai-base provider function and map it to system if its not true. Any thoughts?


DgsComponent DataFetcher Beans not found

I added mysql to this repo here, and now DgsSchemaProvider is not finding my datafetcher DgsComponents.

:disappears This was due to an incorrect ComponentScan value in my application file.


Typo in TSQL example

@alekseybochkov : Thanks for your contribution! The author, @edmacauley, has been notified to review your proposed change.

@rothja please review

Thank you @alekseybochkov merging.


Add JSON output

Description:
We should add a JSON output option. There wont be much performance gains on the cmdstan side (I think) but the cmdstanr and cmdstanpy interface would benefit here. With RapidJSON already included we could do this fairly straightforward.
The larger problem is that most of the writer classes are in the Stan repository and RapidJSON is included in Cmdstan. The easiest solution would probably be to move RapidJSON to Stan. The other way would be to move writers to cmdstan if no other interfaces use them? Though I imagine that would not be straightforward at all.
The other question is what to do with vector or matrix parameters. Should we still output "theta.1", "theta.2",... separately or do we make it a 2D matrix of "theta" with the 1st dimension being iteration and the second the index of theta?
My proposal for the output:
{
  "metadata": {
    "stan_version_major": 2,
    "stan_version_minor": 21,
    "model": "bernoulli",
    "method": "sample",
    "sample": {
      "num_samples": 1000,
      "num_warmup": 1000,
    }
  },
  "inverse_mass_matrix_diag": [2.91534, 2.99768, 2.74546, 3.26315, 2.51984, 3.05785, 2.60865, 3.52745],
  "samples": [
    {
      "mu": [1.0,2.0,3.0,4.0,5.0,6.0]
    },
    {
      "beta": [1.0,2.0,3.0,4.0,5.0,6.0]
    }
  ],
  "time": {
    "units": "seconds",
    "warmup": 0.231476,
    "sampling": 0.001759,
    "total": 0.233235
  }
}

It would be nice to add this for the upcoming January release. We could also tackle #511 easily once we tackle this.
Current Version:
v2.21.0

how about starting a design doc for this?
the problem I see here is that this format would require buffering all samples in memory during sampling and warmup in order to be able to output the above format.
the CSV format is convenient in that each iteration results it a row's worth of values streamed via the model's "write_array" function.  in other words, the sampler produces a row's worth of CSV values on each iteration.
the above JSON is arranged by columns - we would need  JSON notation which outputs one iteration's worth of values.

@rok-cesnovar - very much support working on this initiative - I'd like to generalize it to proto-bufs as well.

the above JSON is arranged by columns - we would need JSON notation which outputs one iteration's worth of values.

+1.  We absolutely need to stream output by iteration if we want to be at all efficient.  Storing columns internally will also lead to a lot memory locality issues with lots of parameters.  It's better to store it all and then transpose it once using a good blocked transpose algorithm than it is to try to build up column-major data from row-level streamed input.
Also, decisions are going to have be made on encoding, since R and Python's standard JSON readers use different formats.

I'd like to generalize it to proto-bufs as well.

The reason we'd been thinking about protobuf is that it's more efficient than JSON.  But the protobuf docs tell you it's not meant for big data output like draws from Stan, but they do support streaming and binary formats.

Ah yes, silly me, going by iteration makes much more sense.
Will make a design doc. I would prefer handling JSON first and separate as I think this has a chance of making it in the next release. Once that is approved we can move from there.
I am not completely sure what the issue is with encoding. For JSON, the default encoding is UTF-8 which is supported in litejson and rjson that are the top R packages for reading JSON input as well as with the built-in json package in python as well as ujson which I think is the fastest json parsing python package.

Thanks.  I think it's NaN and infinity encodings that varies between the standard R and Python libs for JSON.  I'm also not sure what happens with denormalized numbers, which we've had problems with before in practice.

Ah yes, will make sure to mention those in the design doc and see what happens wrt to the built-in and most popular Python/R packages.

see comments in this issue w/r/t NaN etc in R and Python libs:  https://github.com/stan-dev/stan/issues/2686


all buttons designs

all buttons' designs are updated

This PR does not change the current tomcat.css file, it adds a new file (without a license header) at a random path.


Use SQLite instead of PostgreSQL

I was able to:

modify Python script to load data into a SQLite3 DB;
configure a SQLite datasource in Grafana.

Things missing:

Modify all panels in Grafana to use the new datasource.
Verify and modify queries, they may need to use the trick to add timestamp to date fields like SELECT value,  date || 'T00:00:00Z' AS datetime FROM raw_table as seen here.

Showstopper: The first query that I tried to run took 20+ minutes to get me the answer.
Even when I limited the info to 2 levels (--depth 2), it took about 5 minutes for it to return any values. This makes the loading of the dashboard painfully slow.
Need to investigate more, see if I'm doing something wrong (probably), or SQLite3 is not good enough for huge table joins.
Query that took 20 mins:
select
  a.date,
  b.net_worth,
  0 as baseline,
  -1 * a.daily_income * 365 * 40 / 10 / 2 as under_wealth,
  -1 * a.daily_income * 365 * 40 / 10 as expected_wealth,
  -1 * a.daily_income * 365 * 40 / 10 * 2 as over_wealth
from average_daily_income a
join net_worth b on
  a.date = b.date and
  a.currency = b.currency
where
  a.currency = 'MXN' and
  a.date <= '2024-08-01'


Missing info on exact location/coordinates of the Main Camera on device while using MRTK

Describe the issue
There isn't actually a true reference point that is determined as the origin for the Main Camera when using MRTK.
Feature area
Exact location/coordinates of the Main Camera on the device (HL2) while using MRTK is missing.
Existing doc link
https://microsoft.github.io/MixedRealityToolkit-Unity/Documentation/CameraSystem/CameraSystemOverview.html
Additional context
Step 1: Add in a small note in the existing CameraSystemOverview page that calls out the HoloLens as an example and mentions that the camera location at the start of the experience is 0,0,0, which then moves with the user.
Step 2: Need to create a simple article that explains the location of the camera and the scene origin (differs between AR/VR/Specific Platforms). Optionally, the new doc could also include the following:
What are intrinsics
- What are extrinsics
- What do they get used for / why would you use it
- Basic matrix math / transformation math
- basic sample showing a real world scenario

Camera location and differences between AR/VR/Specific platforms are covered at the Unity level as opposed to the MRTK level.
https://docs.microsoft.com/en-us/windows/mixed-reality/develop/unity/camera-in-unity
I'm not sure this is something we want to include in MRTK specific docs.

Camera location and differences between AR/VR/Specific platforms are covered at the Unity level as opposed to the MRTK level.
https://docs.microsoft.com/en-us/windows/mixed-reality/develop/unity/camera-in-unity
I'm not sure this is something we want to include in MRTK specific docs.

No problem, i'm following up on this on the Unity side.

No problem, i'm following up on this on the Unity side.


Bug - fix polymorphic UnionType generation in v0.1.0

type_sub_key parameter was not being provided when scanning tables to generate GraphQL::UnionType for polymorphic association. Hard code :output_type since a UnionType cannot be used in a GraphQL::InputType
https://github.com/geneeblack/graphql_model_mapper/blob/master/lib/graphql_model_mapper/mapper_type.rb#L238

fixed in #23


support to skip to send a comment with an environment variable

Motivation
When we try to run shell scripts for CI on local for testing, in many case we don't want to send a comment.
So we want to support to skip to send a comment with an environment variable.
GITHUB_COMMENT_SKIP_COMMENT

#144


Move base64 constant-time functions to the new module

https://github.com/ARMmbed/mbedtls/issues/3649 (PR: https://github.com/ARMmbed/mbedtls/pull/4866) moves constant-time functions to a new module. https://github.com/ARMmbed/mbedtls/issues/4814 (PR: https://github.com/ARMmbed/mbedtls/pull/4835) rewrites base64 constant-time functions. To allow the two to proceed in parallel, the base64 work will happen inside base64.c and the main constant-time PR not touch the base64 functions.
The goal of this task is to move base64 constant-time functions to the new module, once both https://github.com/ARMmbed/mbedtls/issues/3649 and https://github.com/ARMmbed/mbedtls/issues/4814 are resolved.

I'd like to clarify the intention here, and perhaps more generally with library/constant_time.c. My understanding is that this module was created to avoid code duplication across modules, where various modules would end up defining copies of (mostly) the same basic utility functions (such as turning 0/1 into 0/0xff...ff, etc.) by moving said basic functions to a common place.
Currently, base64.c has 3 functions that are constant-time: mbedtls_base64_mask_of_range(), mbedtls_base64_enc_char() and mbedtls_base64_dec_value(). Of these three, only the first one looks like it's of general use (return 0x00 or 0xff depending on whether a value is in a range); the other two a quite specific to base64. Was the intention of this ticket to move all three of them to constant_time.c, or just the first one?
Actually, looking at the contents of constant_time.c now I see several functions that look pretty specific to a given module, and it's not quite clear to me why they're here rather than their own module. (For example, why wouldn't mbedtls_ct_rsaes_pkcs1_v15_unpadding() be in rsa.c, built using functions from constant_time.c?) We seem to have deviated from the original intent of moving common things to one place, and instead are now moving all constant-time things to one place, even if they're highly specific to one module? Was that a conscious decision, and if so, when did it happen? (Sorry if I'm late on this.)

My understanding is that this module was created to avoid code duplication across modules (…) We seem to have deviated from the original intent of moving common things to one place, and instead are now moving all constant-time things to one place, even if they're highly specific to one module? Was that a conscious decision, and if so, when did it happen?

See https://github.com/ARMmbed/mbedtls/issues/3649. Moving common things in one place was only one of the goals. Another goal was to make validation simpler: when reviewing/analyzing/testing, we know immediately what's expected to be constant-time.
So it was a conscious decision made last year. It's not an irrevocable decision, we can revisit it.

Ok, so I read 3649 again, and it seems like you cited two reasons for creating a new module:

"to make reviewing, testing and static analysis simpler: if a function is in this module, it's expected to be constant-trace"
"we currently have some code duplication because multiple modules required identical or near-identical building blocks"

I was focused on the second reason, and I think I missed some of the things you see as consequences of the first reason.
I fully agree that "if it's in this module, it's expected to be constant-trace", but I don't think we need or want the converse "if it's constant-time, it's in this module" to be true. I mean, I don't think anybody is suggesting moving the implementations of ChachaPoly, all hashes, HMAC, etc. to constant-time.c, even though they're expected to be constant-trace. What if we add a bit-sliced implementation of AES, or make (more of) bignum constant-time? Generally speaking, there will be bits of constant-time code in a lot of places in the library, that can't (and IMO shouldn't) always be cleanly isolated from the rest.
For example: mbedtls_ct_hmac() is currently in constant-time.c, which IMO is wrong as it's quite specific to TLS, but the function that uses it, mbedtls_ssl_decrypt_buf() which stayed (rightfully!) in ssl_tls.c also has a a lot of non-trivial things to make the code path that end up calling mbedtls_ct_hmac() constant-time: the way the padding is checked, the entire flow of the function (making sure we don't return early), the way lengths are managed and checked... Some of those could be abstracted to functions (for example padding checking, which would also make unit tests easier), but at the end of the day there's still going to be non-trivial points in ensuring that "decrypt check legacy-CBC TLS records" happens in constant-time, and I don't think we want a mbedtls_ct_ssl_decrypt_buf_mee_cbc() function in constant-time.c (think of the dependencies if nothing else, this function work on an ssl_context, an ssl_transform and an ssl_record). (We can also talk about the handling of RSA decryption in ssl_srv.c, where the achieving constant-time behaviour changes the flow of the handshake.)

So it was a conscious decision made last year. It's not an irrevocable decision, we can revisit it.

I didn't realize at that point we might have different understandings of the decision that was being made. I thought we were all talking about moving the generic constant-time functions for a new module, which I don't think the description explicitly contradicts, and evidently you were also thinking we were all in agreement, or we'd have discussed it then.
I'd like to have a discussion about it and see if the rules need to be revisited, or perhaps just written down to avoid future misunderstandings, but right now's probably not the best time (I already spent more time writing this message than I probably should have), considering the other more urgent things on our plates. Let's talk about this later then. (Anyway, 3649 is supposed to have follow-ups.)

Your point of view makes sense, and I think it would be reasonable to move specific-purpose functions such as mbedtls_ct_hmac and mbedtls_ct_rsaes_pkcs1_v15_unpadding back into their natural module.
I suggest doing that after we've done a pass of rationalizing core functions though. It's easier to do that with all the functions in one place.

Agreed! Btw, do we already have tickets to track the rationalization pass?

No. https://github.com/ARMmbed/mbedtls/issues/3649 describes some high-level objectives for these follow-ups.


Update index.html

add 'Test'

[ ] Have you followed the contributing guidelines?
[ ] Have you explained what your changes do, and why they add value to the Guides?

Please note: we will close your PR without comment if you do not check the boxes above and provide ALL requested information.

Test


Make border images optional in BaseMessageCollectionViewCellDefaultStyle

[Current coverage][cc-pull] is 64.86%

Merging [#139][cc-pull] into [dev][cc-base-branch] will not change coverage

@@                dev       #139   diff @@
==========================================
  Files            60         60
  Lines          3196       3196
  Methods           0          0
  Messages          0          0
  Branches          0          0
==========================================
  Hits           2073       2073
  Misses         1123       1123
  Partials          0          0

Powered by Codecov. Last updated by [30da76b...8046560][cc-compare]
[cc-base-branch]: https://codecov.io/gh/badoo/Chatto/branch/dev?src=pr
[cc-compare]: https://codecov.io/gh/badoo/Chatto/compare/30da76b68a16501e0f9cbd1f20caca2b5bb80f91...80465605be5183e33678ef3d0646e63ac0442b59
[cc-pull]: https://codecov.io/gh/badoo/Chatto/pull/139?src=pr


Add 50SOMM/50WETH pool to AllowList

Description
Add 50SOMM/50WETH pool to AllowList on the front end
Type of change

[x] New feature (non-breaking change which adds functionality)

How should this be tested?
Just updates configuration as per https://github.com/balancer/frontend-v2/wiki/How-tos#add-pool-id-to-allowlist
Checklist:

[x] I have performed a self-review of my own code
[x] I have requested at least 1 review (If the PR is significant enough, use best judgement here)
[x] I have commented my code where relevant, particularly in hard-to-understand areas
[x] If package-lock.json has changes, it was intentional.
[x] The base of this PR is master if hotfix, develop if not

Thanks @zmanian, this PR is replaced by #3903 that should be reviewed very soon


README.md: newline at end of file

The is missing newline character was discovered
while preparing another patch.

We don't care.

On Tue, Dec 24, 2024 at 03:24:24AM -0800, sigoden wrote:

We don't care.

OK.
For what it is worth:

Initial change was done with github.com webinterface
I was surprised about an extra change I didn't make
Was unable to see what the change was
After a git clone to Linux machine and git show
noticed the missing new line character
Removed the 0x0A with a hexeditor to get a clean #46
Made git branch "newline"
Opened README.md in neoviom and saved the README.md
Got a newline at end-of-file, this time without surprise
Created this merge request

Groeten
Geert Stappers
Silence is hard to parse

Sorry, I apologize if my remarks were too direct or impolite.
Adding/removing a newline at the end of an md file doesn't make much sense.

On Tue, Dec 24, 2024 at 03:51:07AM -0800, sigoden wrote:

Sorry, I apologize if my remarks were too direct or impolite.

No worries,  we are good.

Adding/removing a newline at the end of an md file doesn't make much sense.

Yes, we, you and I, agree on that.  That there is software that deem a
newline at end-of-file important, is something we deal with.
Groeten
Geert Stappers
P.S.
Merry Christmas
Silence is hard to parse


Docs(web-twig): Introduce Migration Guide to version 4

Description

Additional context

Issue reference

coverage: 96.838%. remained the same
when pulling c84a594cb0a3083423be47a17047f076413bbb05 on docs/v3-twig-migration-guide
into 9aacc57ee1962e32e69e42bc5b8daf43515b0de3 on integration/BC-v3-design-tokens.


match args ignored in enumerate devices

If the match args specify any unique keys like serial or device addresses, they should not yield results when those values do not match the ones in the discovery for loop. This is necessary to select a specific device either by manually specifying an identifying key/value like serial or using the exact results from the enumeration
There also seems to be a bug where the serial number is empty

reference issue: https://github.com/pothosware/SoapySDR/issues/248
see findIConnection(const SoapySDR::Kwargs &matchArgs)

@jhshark
In progress on preliminary fix for enumeration match, at least for the 'device' keyword. Will do a pull request at some point.


Potential funding sources

What funding sources are available for the MOOC.

http://ec.europa.eu/research/participants/portal/desktop/en/opportunities/h2020/topics/swafs-08-2019.html

Note: This project is now also partially funded by the Shuttleworth Foundation.


chore: prepare release

Include here https://github.com/newrelic/opentelemetry-collector-releases/pull/100


Error example to set default provider in README

There is a small syntactical error in the README on how to set the default provider to chocolatey.
There should be a second set of brackets around the Package line so this
case $operatingsystem {
  'windows':
    Package { provider => chocolatey, }
}

should be this
case $operatingsystem {
  'windows': {
    Package { provider => chocolatey, }
  }
}

Otherwise you get a syntax error.

Second - I hit this issue to using Puppet 4.5 and latest version of this module.

Ah, thanks! We should get that corrected in the readme.

Corrected in the readme!

I'm not sure how I missed the original notification on this...


tests: Add a ginkgo for mayastor install

Given a running 3 node cluster, install mayastor and verify that it
comes up.
Very basic first steps into testing against a kubernetes cluster.

@tjoshum can we move all this under mayastor-test/e2e?

@tjoshum can we move all this under mayastor-test/e2e?

Done

Perhaps also install deploy/storage-class.yaml as prt of the test?

Perhaps also install deploy/storage-class.yaml as part of the test?

I can bring it in easily enough if you'd like? Though it's not referenced in the quick start (which talks about using custom classes: https://mayastor.gitbook.io/introduction/quickstart/configure-mayastor#create-mayastor-storageclass-s)

Depends on the objective I guess. My thinking was  mayastor is unusable without storage classes. Since we do provide 2 examples, it would be good to check that they work as expected. Though this test doesn't do that. So I'm fine if they are not loaded as part of the this change.

nice! Just a nit but I think we should move the e2e directory to the top level not to interfere with npm package containing mocha tests that are testing mayastor grpc API. So that the distinction is clear.

what about moving the mocha tests to mayastor-test/mocha or something like that and keep all the tests inside mayastor-test? And could we move the nix tests there as well?

I originally had the tests in the top level directory, for the reason @jkryl says. I think organising mocha, ginkgo and nix tests under mayastor-test is a good idea, but might do that in a separate PR to keep it contained (especially since bors now handles the pain of merging for us).

bors retry

bors merge


invalid request_url or callback_url error when force flag is enabled

api returns
{
	"error": "invalid request_url or callback_url"
}

1) if the link is already archieved and force=true
http://tl-app.a.teyit.link/api/archive?force=true&callback_url=https://cancit.com&request_url=https://cancit.com
**2)**if the link is not archieved before
http://tl-app.a.teyit.link/api/archive?request_url=https://github.com/noddigital/teyit.link
But this works:
http://tl-app.a.teyit.link/api/archive?request_url=https://cancit.com

Changed the validation method for callbackUrl, now validation only happens if callbackUrl is present.

this is fixed but not yet deployed to staging.


Supplement e2e for new milvus search

Codecov Report
Base: 95.28% // Head: 95.29% // Increases project coverage by +0.01% :tada:

Coverage data is based on head (7096dea) compared to base (6a5de8b).
Patch coverage: 96.07% of modified lines in pull request are covered.

Additional details and impacted files
@@            Coverage Diff             @@
##           master       #4      +/-   ##
==========================================
+ Coverage   95.28%   95.29%   +0.01%
==========================================
  Files          13       13
  Lines        1102     1126      +24
  Branches      207      205       -2
==========================================
+ Hits         1050     1073      +23
- Misses         52       53       +1

Flag
Coverage Δ

unittests
95.29% <96.07%> (+0.01%)
:arrow_up:

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

src/search.js
89.25% <96.07%> (+0.36%)
:arrow_up:

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.

Great work for tuning the e2e GitHub Action.
Congratulation! You made it!


Perf optimization for SQL GROUP BY ORDER BY

This PR optimizes the performance of SQL GROUP BY ORDER BY.
Problem:
We recently observed that GROUP BY ORDER BY queries having a large (~20million) numDocsScanned are 3x-4x slower as compared to PQL. Removing ORDER BY from the queries made the performance on par or even faster than PQL in some cases. So ORDER BY code was the reason for degradation during server-combine and broker-reduce phases since segment level execution between PQL and SQL is the same for GROUP BY ORDER BY.
Couple of factors in the order by code are contributing to degradation:

More resizes: Resizes are essentially not the internal resize of the ConcurrentHashMap used by IndexedTable. The resize here is the trimming operation done by TableResizer everytime the map reaches the trimThreshold. The resize requires inserting items in PQ (sorting) and evicting the trimThreshold - trimSize number of items from the map.
Conversion to IntermediateRecord - the trimming operation as part of resize builds IntermediateRecord as the temporary object to insert into the PQ and requires non-trivial temporary data structures for sorting.

`
| PQL | SQL | SQL optimized
-- | -- | -- | --
Server Combine
trimSize for server combine | max(TOP * 5, 5000) | max(LIMIT * 5, 5000) | max(LIMIT * 5, 5000)
trimThreshold for segment combine | trimSize * 4 | trimSize <= 100_000 trimThreshold = 1m else trimThreshold = trimSize * 1.2 | trimSize <= 100_000 trimThreshold = 1m else trimThreshold = trimSize * 4
Num resizes/sort during segment execution | 0 | 0 | 0
Num resizes/sort during server combine | At most once - when the server combine is done, if numGroups > trimThreshold, trim to trimSize. | During upsert every time we hit trimThreshold, trim to trimSize.During finish, we trim again to trimSize | During upsert, no trimming. During finish, if numGroups > trimThreshold, trim to trimSize. Finish is called when the server combine is over.
Broker Reduce
trimSize for broker reduce | TOP | max(LIMIT * 5, 5000) | LIMIT
trimThreshold for broker reduce | N.A | trimSize <= 100_000 trimThreshold = 1m else trimThreshold = trimSize * 1.2 | N.A
Num resizes/sort during broker combine | Exactly once - after adding results from all DataTables to the finalMap, trim to TOP | We upsert rows from each DataTable into IndexedTable. During upsert every time we hit trimThreshold, trim to trimSize. During finish, we resize again to trimSize Finally use LIMIT number of rows from the trimmed set as the final result set | During upsert, no trimming. Exactly once - when finish is called after upserting rows from each DataTable into indexed table. Trimmed to LIMIT
`
For a given SQL query with LIMIT 50000 and numDocsScanned 21million:

trimSize -> max (50000 * 5, 5000) -> 250000
trimThreshold -> trimSize * 1.2 -> 300000
num resizes(trims) during server combine - ~20
cumulative resize/trim time during server combine - 2282ms
num resizes (trims) during broker reduce - ~10
cumulative resize/trim time during broker reduce - 1200ms

Total SQL query time ~4000ms
Total PQL query time ~1400ms
Solution
The solution is aimed at bringing the resize/trim code on par with PQL to get similar performance.

trimThreshold = trimSize * 4
No trimming during upsert
During server combine, trim at most once when indexedTable.finish (false) is called by combiner if numGroups > trimThreshold. Trim to trimSize
During broker reduce, trim exactly once when indexedTable.finish(true) is called. Trim to LIMIT N

With the above changes:

num resizes(trims) during server combine - 1
cumulative resize/trim time during server combine - 400ms
num resizes (trims) during broker reduce - 1
cumulative resize/trim time during broker reduce - 120ms

Total SQL query time ~1400ms

If there is no resize during the upsert, how do you prevent server from running out of memory?
One big difference between PQL and SQL is that for PQL we limit the groups in the map (trimming during upsert is desired, but not possible for PQL semantic). For SQL we want to trim the result during upsert to have the accurate result and also prevent OOM. We can increase the trimming threshold to reduce the number of trimmings.

+1, eliminating resizing during upsert is dangerous and can cause OOM. PQL has a config to bypass the truncation that certain use cases are using, perhaps the same can be used for reducing num resize during upserts (defaulting to a tuned value that does not require a general case to explicitly set a value).

Codecov Report

Merging #6225 (ea600cf) into master (1beaab5) will decrease coverage by 20.08%.
The diff coverage is 51.75%.

@@             Coverage Diff             @@
##           master    #6225       +/-   ##
===========================================
- Coverage   66.44%   46.36%   -20.09%
===========================================
  Files        1075     1244      +169
  Lines       54773    58967     +4194
  Branches     8168     8741      +573
===========================================
- Hits        36396    27342     -9054
- Misses      15700    29385    +13685
+ Partials     2677     2240      -437

Flag
Coverage Δ

integration
46.36% <51.75%> (?)

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

...ot/broker/broker/AllowAllAccessControlFactory.java
100.00% <ø> (ø)

.../helix/BrokerUserDefinedMessageHandlerFactory.java
52.83% <0.00%> (-13.84%)
:arrow_down:

...org/apache/pinot/broker/queryquota/HitCounter.java
0.00% <0.00%> (-100.00%)
:arrow_down:

...che/pinot/broker/queryquota/MaxHitRateTracker.java
0.00% <0.00%> (ø)

...ache/pinot/broker/queryquota/QueryQuotaEntity.java
0.00% <0.00%> (-50.00%)
:arrow_down:

...ker/routing/instanceselector/InstanceSelector.java
100.00% <ø> (ø)

...ceselector/StrictReplicaGroupInstanceSelector.java
0.00% <0.00%> (ø)

...ava/org/apache/pinot/client/AbstractResultSet.java
26.66% <0.00%> (-30.48%)
:arrow_down:

.../main/java/org/apache/pinot/client/Connection.java
22.22% <0.00%> (-26.62%)
:arrow_down:

.../org/apache/pinot/client/ResultTableResultSet.java
24.00% <0.00%> (-10.29%)
:arrow_down:

... and 1233 more

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 5a53fbe...4c5ed4d. Read the comment docs.

Could you confirm that this PR has behavior change only for large group-bys? For small/medium group-bys is it identical behavior? If not, could you call out the changes?

For segment level, there is no change (even the PR doesn't introduce any change at segment level)
For server and broker level, now the SQL also uses the 2 * 100k (configurable) as the trimThreshold. If any current use case is under 100k, there will not be any change.

Also, with this change, for SQL GROUP BY we can now use the configuration and fine-tune on a per use case basis to decrease the frequency of trimming (during upsert) just like it can be reduced to 0 for use cases with large group by.


Add privacy manifest to 1p macOS plugins

According to https://github.com/flutter/flutter/issues/154915, Apple will start requiring privacy manifests for macOS on November 12, 2024:

ITMS-91061: Missing privacy manifest - Your app includes “Contents/Frameworks/FlutterMacOS.framework/Versions/A/FlutterMacOS”, which includes Flutter, an SDK that was identified in the documentation as a privacy-impacting third-party SDK. Starting November 12, 2024, if a new app includes a privacy-impacting SDK, or an app update adds a new privacy-impacting SDK, the SDK must include a privacy manifest file. Please contact the provider of the SDK that includes this file to get an updated SDK version with a privacy manifest. For more details about this policy, including a list of SDKs that are required to include signatures and manifests, visit: https://developer.apple.com/support/third-party-SDK-requirements.

flutter/packages repo should add privacy manifest similar to https://github.com/flutter/flutter/issues/131495.  NSPrivacyTracking* and NSPrivacyCollectedDataTypes keys are required, but the values can be blank.  macOS explicitly does not need the NSPrivacyAccessedAPITypes (see more info in https://github.com/flutter/flutter/issues/143381)
See the iOS PR https://github.com/flutter/packages/pull/5846 for what work needs to be done for this.

Looks like file_selector_macos and url_launcher_macos are the only ones without them (since most are shared implementation packages, so macOS got it for free when we did iOS).
Neither of them are listed on the SDK page, but url_launcher is, so it may be that url_launcher_macos is silently included the same way that FlutterMacOS isn't listed but apparently counts as Flutter. Although the page does list url_launcher_ios, so 🤷🏻 .
Easy enough to just add it to both of them and update the tooling to enforce it. I'll do that shortly.


custom_deps stops working

Hi!
The custom_deps addon stopped working for me.
I assume the problem is that the addon uses folder "/config/deps/lib/python3.7/" to install packages, but my Supervised Core is running python 3.8.

arch
aarch64

chassis
embedded

dev
false

docker
true

docker_version
19.03.8

hassio
true

host_os
HassOS 4.11

installation_type
Home Assistant OS

os_name
Linux

os_version
4.19.127-v8

python_version
3.8.3

supervisor
229

timezone
Europe/Budapest

version
0.113.2

virtualenv
false

I do experience the same issue. As a workaround I renamed the “python3.7” folder into “python3.8” after running deps. But it’s better to get this fixed properly though.

In theory, this add-on should not be used. Dependencies are loaded as part of the integration manifests. Any specific use case for you guys?

I do understand it not for a regular user. I’m using this add-on to “move” a specific 3rd party lib to a folder underneath config at my hassio based production system (rpi 4). This allows me to remotely make some changes to the “moved” lib for debug/testing purposes. Mainly for the ones I do some contributions to.
I don’t have duplicate hardware to setup a separate representative development environment. If there’s a better/easier way I’m happy to know.

@brefra There is, copy the integration to the custom_components folder, that would give a more accurate representation of what you are doing.

I used this addon to test beta versions of zigpy-cc lib, which is used by ZHA integration.

@frenck you mean I need to copy the whole ZHA integration to cusom_components?
Will this override the original integration or I need to rename it?
What is the real purpose of this addon?

Yes a copied integration will kind of "overwrite" the original one.
When you've copied the integration files over to the custom_components folder you can alter the vale of the requirements property listed at the manifest.json file, to use for example (your forked) github hosted version of the lib. Like described here


feat: i add new image file and footer

on the steps to complation of my task i add some few html codes

Great


[ARQ-2070] Adds possibility to strip statement delimiter from parsed statements

Adds the possibility to strip the statement delimiter from the parsed statements. E.g. IBM DB2 (Express-C 11.1) does not accept the delimiter in the executed statement.
Fixes: #ARQ-2070

Pushed upstream with some minor tweaks @47e5a01.
Thank you!


fix possible memory confusion in unsafe slice cast

I found an incorrect cast from string to []byte in reflect2.go. The problem is that when reflect.SliceHeader is created as a composite literal (instead of deriving it from an actual slice by cast), then the Go garbage collector will not treat its Data field as a reference. If the GC runs just between creating the SliceHeader and casting it into the final, real []byte slice, then the underlying data might have been collected already, effectively making the returned []byte slice a dangling pointer.
This has a low probability to occur, but projects that import this library might still use it in a code path that gets executed a lot, thus increasing the probability to happen. Depending on the memory layout at the time of the GC run, this could potentially create an information leak vulnerability.
This PR changes the function to create the reflect.SliceHeader from an actual slice by first instantiating the return value.

you are right

@AllenX2018

reflect2.go forget import "runtime"

Yes, I am sorry. there needs to be an import runtime, my bad!

Awesome!


Remove description root property, and rename specification_version and specification_source

…tion-version and specification-source for consistency with other props
Pull Request
What changed?
This removes the description field from root as it should be in sections. Also this renames the - separated field names to _
Why did it change?
Validation was breaking with proper json. This now makes it pass in my tool that uses the schema changes in this PR.

CERTIFICATION
By opening this pull request, I do agree to abide by
the CODE OF CONDUCT and be bound by the terms
of the Contribution Guidelines in effect on the date and time
of my contribution as proven by the
revision information in GitHub. I also agree that any previous contributions shall be deemed subject to the terms of the
version in effect on the date and time of this pull request, or any future revisions for pull requests I may submit.
Further, I certify that this work is my own, is original, does not violate the intellectual property of any other person
or entity, and I am not violating any license agreements or contracts I have with any person or entity. Finally, I agree
that this code may be licensed under any license deemed appropraite by AspirePress, including but not
limited to open source, closed source, proprietary or custom licenses, and that such license terms neither violate my
rights or my copyright to this code.

@antpb

isn't the "description" field - a required field for the current WordPress.org repo? If it is, we should keep it.
I don't know how this would work, or to what extent the validation tool is checking things, but would it be possible to have your JSON validation tool be included as part of a GitHub actions check when pushing to the repo? I am unsure if it is worth the work, but since you already built this, it would ensure we have a valid spec each time and perhaps we could use it to validate the JSON of plugins to our spec as part of the plugin check process.

@yosefeliezrie thanks! Yeah. That's a big reason I left this PR open, I wondered if the duplicate description was intentional in the base spec. I think then this highlights we need to define the purpose of the sections object as being relative to the rendering of a plugin page. I'll update this PR to define that better,
On the validation, that's exactly what the screenshot is showing! :D
This is the final step before a user publishes to https://pluginpublisher.com
There's a tools directory in this repo that utilizes these schema docs to validate an input json matches expected fields and data types. I'll maintain these going forward as was well as this public cloudflare worker

i have this public validator also
curl -X POST \
https://calm-fog-c257.sxpdigital.workers.dev/validate -H 'Content-Type: application/json' -d '{"name": "XR Publisher", "slug": "xr-publisher", "version": "2.0-alpha", "author": "antpb", "requires": "5.0", "tested": "6.7", "requires_php": "7.2", "last_updated": "2024-10-09 12:00pm GMT", "added": "2024-10-09", "short_description": "A WordPress plugin for drag and drop 3D content creation compatible with most XR devices.", "description": "A WordPress plugin for publishing XR content with support for WebXR and popular glTF Extensions.", "download_link": "https://updater.sxp.digital/xr-publisher.zip", "spec_meta": {"specification-version": "1.0", "specification-source": "aspiprepress"}}'

This endpoint proves that folks can make validators based on the schema to do things like GitHub actions against it. All they need to do going forward is keep their references to the schema up to date. In my case I store the schema json files as KV stores in the cloudflare worker


Make RPC params optional

I have a fair number of functions that rely on auth id for results with no params.
What kind of change does this PR introduce?
Just a minor tweak to make the RPC parameters optional. Shouldn't affect existing code.
What is the current behavior?
Switching the signature from
public Task<BaseResponse> Rpc(string procedureName, Dictionary<string, object> parameters)

to
public Task<BaseResponse> Rpc(string procedureName, Dictionary<string, object>? parameters = null)

LGTM!


Add stricter build flags

Changes in this pull request
Gets the xcodeproj in parity with our internal build settings.
Fixes #211
Pull request checklist

[x] All tests pass. Demo project builds and runs.
[x] I have reviewed the contributing guide

🎉


Document the "multiple classes for one condition" syntax (and implement it in 0.7)

The syntax discussed in https://github.com/leptos-rs/leptos/discussions/3053 exists but is undocumented.

Hey @gbj ,
I'm interested in tackling this, please assign this to me.


Selecting F# as "Language Mode" does not start autocomplete

Describe the bug
After creating a new file in VSCode and selecting F# as the language mode the code is colonized but AutoComplete, tool-tips etc are not working.
To Reproduce
Steps to reproduce the behaviour:

Create a new file with "Command-N
Set language mode to F#
Type in `let foo = 4'

Notice that while the code is colonized as soon as F# mode is select no other editor support lights up.
Expected behaviour
The code should be colonized AND tool-tips, line lens, IntelliSense etc should be active.
Screenshots
Get this

But expect this:

Environment (please complete the following information):

OS: OSX
Ionide version: 4.11.1
VSCode version: 1.45.1
dotnet SDK version: 5.0 preview 4N/A
mono / .Net Framework version:

Additional context
The F# output shows exceptions the first two of which appear as soon as let is typed.
[Error - 1:54:38 PM] Request textDocument/completion failed.
  Message: System.ArgumentOutOfRangeException: Index and length must refer to a location within the string.
Parameter name: length
   at System.String.Substring(Int32 startIndex, Int32 length)
   at FsAutoComplete.Lsp.TextDocumentCompletion@624.Invoke(Unit unitVar) in D:\Programowanie\ionide\paket-files\github.com\fsharp\FsAutoComplete\src\FsAutoComplete\FsAutoComplete.Lsp.fs:line 637
   at Microsoft.FSharp.Control.AsyncPrimitives.CallThenInvoke[T,TResult](AsyncActivation`1 ctxt, TResult result1, FSharpFunc`2 part2) in F:\workspace\_work\1\s\src\fsharp\FSharp.Core\async.fs:line 398
   at Microsoft.FSharp.Control.Trampoline.Execute(FSharpFunc`2 firstAction) in F:\workspace\_work\1\s\src\fsharp\FSharp.Core\async.fs:line 109
  Code: -32603
[Error - 1:54:38 PM] Request textDocument/completion failed.
  Message: System.ArgumentOutOfRangeException: Index and length must refer to a location within the string.
Parameter name: length
   at System.String.Substring(Int32 startIndex, Int32 length)
   at FsAutoComplete.Lsp.TextDocumentCompletion@624.Invoke(Unit unitVar) in D:\Programowanie\ionide\paket-files\github.com\fsharp\FsAutoComplete\src\FsAutoComplete\FsAutoComplete.Lsp.fs:line 637
   at Microsoft.FSharp.Control.AsyncPrimitives.CallThenInvoke[T,TResult](AsyncActivation`1 ctxt, TResult result1, FSharpFunc`2 part2) in F:\workspace\_work\1\s\src\fsharp\FSharp.Core\async.fs:line 398
   at Microsoft.FSharp.Control.Trampoline.Execute(FSharpFunc`2 firstAction) in F:\workspace\_work\1\s\src\fsharp\FSharp.Core\async.fs:line 109
  Code: -32603
[Error - 1:54:50 PM] Request textDocument/completion failed.
  Message: System.ArgumentOutOfRangeException: Index and length must refer to a location within the string.
Parameter name: length
   at System.String.Substring(Int32 startIndex, Int32 length)
   at FsAutoComplete.Lsp.TextDocumentCompletion@624.Invoke(Unit unitVar) in D:\Programowanie\ionide\paket-files\github.com\fsharp\FsAutoComplete\src\FsAutoComplete\FsAutoComplete.Lsp.fs:line 637
   at Microsoft.FSharp.Control.AsyncPrimitives.CallThenInvoke[T,TResult](AsyncActivation`1 ctxt, TResult result1, FSharpFunc`2 part2) in F:\workspace\_work\1\s\src\fsharp\FSharp.Core\async.fs:line 398
   at Microsoft.FSharp.Control.Trampoline.Execute(FSharpFunc`2 firstAction) in F:\workspace\_work\1\s\src\fsharp\FSharp.Core\async.fs:line 109
  Code: -32603
[Error - 1:54:50 PM] Request textDocument/completion failed.
  Message: System.ArgumentOutOfRangeException: Index and length must refer to a location within the string.
Parameter name: length
   at System.String.Substring(Int32 startIndex, Int32 length)
   at FsAutoComplete.Lsp.TextDocumentCompletion@624.Invoke(Unit unitVar) in D:\Programowanie\ionide\paket-files\github.com\fsharp\FsAutoComplete\src\FsAutoComplete\FsAutoComplete.Lsp.fs:line 637
   at Microsoft.FSharp.Control.AsyncPrimitives.CallThenInvoke[T,TResult](AsyncActivation`1 ctxt, TResult result1, FSharpFunc`2 part2) in F:\workspace\_work\1\s\src\fsharp\FSharp.Core\async.fs:line 398
   at Microsoft.FSharp.Control.Trampoline.Execute(FSharpFunc`2 firstAction) in F:\workspace\_work\1\s\src\fsharp\FSharp.Core\async.fs:line 109
  Code: -32603
[Error - 1:54:50 PM] Request textDocument/completion failed.
  Message: System.ArgumentOutOfRangeException: Index and length must refer to a location within the string.
Parameter name: length
   at System.String.Substring(Int32 startIndex, Int32 length)
   at FsAutoComplete.Lsp.TextDocumentCompletion@624.Invoke(Unit unitVar) in D:\Programowanie\ionide\paket-files\github.com\fsharp\FsAutoComplete\src\FsAutoComplete\FsAutoComplete.Lsp.fs:line 637
   at Microsoft.FSharp.Control.AsyncPrimitives.CallThenInvoke[T,TResult](AsyncActivation`1 ctxt, TResult result1, FSharpFunc`2 part2) in F:\workspace\_work\1\s\src\fsharp\FSharp.Core\async.fs:line 398
   at Microsoft.FSharp.Control.Trampoline.Execute(FSharpFunc`2 firstAction) in F:\workspace\_work\1\s\src\fsharp\FSharp.Core\async.fs:line 109
  Code: -32603

If the code is typed in first and then the mode is changed the output looks like this. The excption is logged after starting to edit.
[Error - 1:56:27 PM] Request textDocument/hover failed.
  Message: Cached typecheck results not yet available
  Code: -32603
[Error - 1:56:28 PM] Request textDocument/hover failed.
  Message: Cached typecheck results not yet available
  Code: -32603
[Error - 1:56:34 PM] Request textDocument/completion failed.
  Message: System.IndexOutOfRangeException: Index was outside the bounds of the array.
   at FsAutoComplete.Lsp.TextDocumentCompletion@624.Invoke(Unit unitVar) in D:\Programowanie\ionide\paket-files\github.com\fsharp\FsAutoComplete\src\FsAutoComplete\FsAutoComplete.Lsp.fs:line 624
   at Microsoft.FSharp.Control.AsyncPrimitives.CallThenInvoke[T,TResult](AsyncActivation`1 ctxt, TResult result1, FSharpFunc`2 part2) in F:\workspace\_work\1\s\src\fsharp\FSharp.Core\async.fs:line 398
   at Microsoft.FSharp.Control.Trampoline.Execute(FSharpFunc`2 firstAction) in F:\workspace\_work\1\s\src\fsharp\FSharp.Core\async.fs:line 109
  Code: -32603

And finally if the file is auto-opened by VSCode after a restart the output looks like this:
[Error - 3:59:45 PM] Request textDocument/foldingRange failed.
  Message: File '/Untitled-1.fsx' not parsed
  Code: -32603

And finally probably the same bug. If you configure the setting files.defaultLanguage to fsharp and open a new file then.
First the empty file opens and you see this in the output:
[Error - 7:16:34 PM] Request textDocument/foldingRange failed.
  Message: File '/Untitled-1.fsx' not parsed
  Code: -32603

Then as soon as you start typing in the editor you get the following in the output:
[Error - 7:16:49 PM] Request textDocument/completion failed.
  Message: System.ArgumentOutOfRangeException: Index and length must refer to a location within the string.
Parameter name: length
   at System.String.Substring(Int32 startIndex, Int32 length)
   at FsAutoComplete.Lsp.TextDocumentCompletion@624.Invoke(Unit unitVar) in D:\Programowanie\ionide\paket-files\github.com\fsharp\FsAutoComplete\src\FsAutoComplete\FsAutoComplete.Lsp.fs:line 637
   at Microsoft.FSharp.Control.AsyncPrimitives.CallThenInvoke[T,TResult](AsyncActivation`1 ctxt, TResult result1, FSharpFunc`2 part2) in F:\workspace\_work\1\s\src\fsharp\FSharp.Core\async.fs:line 398
   at Microsoft.FSharp.Control.Trampoline.Execute(FSharpFunc`2 firstAction) in F:\workspace\_work\1\s\src\fsharp\FSharp.Core\async.fs:line 109
  Code: -32603
[Error - 7:16:49 PM] Request textDocument/completion failed.
  Message: System.ArgumentOutOfRangeException: Index and length must refer to a location within the string.
Parameter name: length
   at System.String.Substring(Int32 startIndex, Int32 length)
   at FsAutoComplete.Lsp.TextDocumentCompletion@624.Invoke(Unit unitVar) in D:\Programowanie\ionide\paket-files\github.com\fsharp\FsAutoComplete\src\FsAutoComplete\FsAutoComplete.Lsp.fs:line 637
   at Microsoft.FSharp.Control.AsyncPrimitives.CallThenInvoke[T,TResult](AsyncActivation`1 ctxt, TResult result1, FSharpFunc`2 part2) in F:\workspace\_work\1\s\src\fsharp\FSharp.Core\async.fs:line 398
   at Microsoft.FSharp.Control.Trampoline.Execute(FSharpFunc`2 firstAction) in F:\workspace\_work\1\s\src\fsharp\FSharp.Core\async.fs:line 109
  Code: -32603
[Error - 7:16:50 PM] Request textDocument/completion failed.
  Message: System.ArgumentOutOfRangeException: Index and length must refer to a location within the string.
Parameter name: length
   at System.String.Substring(Int32 startIndex, Int32 length)
   at FsAutoComplete.Lsp.TextDocumentCompletion@624.Invoke(Unit unitVar) in D:\Programowanie\ionide\paket-files\github.com\fsharp\FsAutoComplete\src\FsAutoComplete\FsAutoComplete.Lsp.fs:line 637
   at Microsoft.FSharp.Control.AsyncPrimitives.CallThenInvoke[T,TResult](AsyncActivation`1 ctxt, TResult result1, FSharpFunc`2 part2) in F:\workspace\_work\1\s\src\fsharp\FSharp.Core\async.fs:line 398
   at Microsoft.FSharp.Control.Trampoline.Execute(FSharpFunc`2 firstAction) in F:\workspace\_work\1\s\src\fsharp\FSharp.Core\async.fs:line 109
  Code: -32603
[Error - 7:16:50 PM] Request textDocument/completion failed.
  Message: System.ArgumentOutOfRangeException: Index and length must refer to a location within the string.
Parameter name: length
   at System.String.Substring(Int32 startIndex, Int32 length)
   at FsAutoComplete.Lsp.TextDocumentCompletion@624.Invoke(Unit unitVar) in D:\Programowanie\ionide\paket-files\github.com\fsharp\FsAutoComplete\src\FsAutoComplete\FsAutoComplete.Lsp.fs:line 637
   at Microsoft.FSharp.Control.AsyncPrimitives.CallThenInvoke[T,TResult](AsyncActivation`1 ctxt, TResult result1, FSharpFunc`2 part2) in F:\workspace\_work\1\s\src\fsharp\FSharp.Core\async.fs:line 398
   at Microsoft.FSharp.Control.Trampoline.Execute(FSharpFunc`2 firstAction) in F:\workspace\_work\1\s\src\fsharp\FSharp.Core\async.fs:line 109
  Code: -32603
[Error - 7:16:50 PM] Request textDocument/completion failed.
  Message: System.ArgumentOutOfRangeException: Index and length must refer to a location within the string.
Parameter name: length
   at System.String.Substring(Int32 startIndex, Int32 length)
   at FsAutoComplete.Lsp.TextDocumentCompletion@624.Invoke(Unit unitVar) in D:\Programowanie\ionide\paket-files\github.com\fsharp\FsAutoComplete\src\FsAutoComplete\FsAutoComplete.Lsp.fs:line 637
   at Microsoft.FSharp.Control.AsyncPrimitives.CallThenInvoke[T,TResult](AsyncActivation`1 ctxt, TResult result1, FSharpFunc`2 part2) in F:\workspace\_work\1\s\src\fsharp\FSharp.Core\async.fs:line 398
   at Microsoft.FSharp.Control.Trampoline.Execute(FSharpFunc`2 firstAction) in F:\workspace\_work\1\s\src\fsharp\FSharp.Core\async.fs:line 109
  Code: -32603

This works just fine for me. As I've mentioned in another issue - you need to have folder opened anyway, Ionide won't work at all with scenario without any folder opened

Yah, as I mentioned in #1381 this issue is probably a manifestation of not having a folder open and I'm happy to have this issue closed


Ideal api for usage

This is an issue to discuss the general usage API of nerves_network and what it should look like relative to what it is currently.

So i think there are a few levels to this issue. Id like to address and discuss them here.
Working with WPA Supplicant
Right now when you call Nerves.Network.setup("wlan0", [some: :settings]) it just get passed pretty much untouched to Nerves.WpaSupplicant Ideally these settings would be verified somewhere. Nerves.Network kind of knows too much about what goes on inside Nerves.WpaSupplicant. This probably warrants an issue on that repository, but ideally
We should use something like SystemRegistry to interact with WpaSupplicant. This will save situations where an event is missed or ignored.
Lose API spec.
Even after typespecing the API, it is still too lose. You can pass pretty much any ole data into the setup/2 function and things may or may not happen the way you want them. I think we need a comprehensive list of all available settings for things like:

ip addressing for static and dhcp.
wpa_supplicant
subscription to events (see below)

The big SystemRegistry discussion.
Right now Nerves.Network pretty much just wraps Nerves.WpaSupplicant and Nerves.NetworkInterface. Unfortunately those libs haven't been updated to use SystemRegistry, so as an end user trying to use this lib, one has to not only subscribe to SystemRegistry, but use Elixir.Registry to subscribe to the above two projects. Ideally their state would also be in SystemRegistry. Now another discussion related to using SystemRegistry is if we should force the end user to use SystemRegistry. I think it would be nicer to have a first class registration system for just Nerves.Network events so users don't have to watch three different state trees inside SystemRegistry. This would obviously be the most work to implement but i think would give the best user experience. IE something like this for the end user.
def handle_info({:nerves_network, _iface, {:udhcpc, {:bound, ip}}, state)
def handle_info({:nerves_network, _iface, {:wpa_supplicant, {:network_disconnect}}}, state)

Other notes
I would really like an api for blocking until internet (or an ip address) is confirmed, or some variant of wait_for_event(iface, pattern) that you could just put into Shoehorn. This would make initial bring up of a Nerves project way easier in my opinion.
Please anyone feel free to chime in on things you want/don't want.

While thinking about how the api should be structured i think these issues are important to keep in mind:
#72 - Multiple access points for wireless interfaces
#35 - Teardown not really doing anything
#62 - Setting up a non existent interface doesn't raise an error. (do we even want it too?)

For #62, you'll need to handle this somehow since interfaces come up asynchronously. It may look like they always exist, but there's a period of time at startup where the USB bus is enumerated, wifi drivers loaded, wifi firmware initialized, etc. and then they show up. It's also important for devices that power down their USB Wifi Dongles to save power when not in use or reset them if WiFi is wonky. I've had to do the latter on shipped devices to work around WiFi driver/firmware images that couldn't be resolved in time.

Ah that last part is a use case i hadn't really considered. Good to know about.

Closing due to lack of dicussion.
#72 and #35 have been fixed and the API for setup has been pretty well normalized since May.


Taiko-fast fee

Describe the bug
Description of the bug here.
Steps to reproduce
Steps to reproduce here.
Additional context
Additional context here.

no issue but find

waiting to response


ci(bigtable): run conformance tests on presubmit

…d to asan script but doesn't use any bazel args such as --config=asan

This change is

/gcbrun

asan-pr passed with additional runtime of ~1 minute. Unfortunately, there is a typo. I updated it again.

/gcbrun

/gcbrun

/gcbrun

/gcbrun


Syntax file causes crash when block highlight is missing "rules" block

Description of the problem or steps to reproduce
In writing a hyperscript extension to the included syntax/html.yaml file, I added these lines:
    - default:
        start: "<script.*?type=\"text/hyperscript\"?>"
        end: "</script.*?>"
        limit-group: symbol.tag
        rules:
        - include: "_hyperscript"

, along with a file named _hyperscript.yaml right next to it:
filetype: _hyperscript

detect:
    filename: "\\._hs$"

rules:
- comment:
        start: "--"
        end: "$"
        #rules:
        #    - todo: "(TODO|XXX|FIXME)"

On starting Micro, opening any html file (or reloading the syntax in an existing window, ie by Ctrl+S) crashes:
Micro encountered an error: runtime.errorString runtime error: invalid memory address or nil pointer dereference
runtime/panic.go:261 (0x452fd8)
runtime/panic.go:260 (0x452fa6)
github.com/zyedidia/micro/v2/pkg/highlight/parser.go:276 (0x85c4e3)
github.com/zyedidia/micro/v2/pkg/highlight/parser.go:266 (0x85bffb)
github.com/zyedidia/micro/v2/pkg/highlight/parser.go:252 (0x8670d7)
github.com/zyedidia/micro/v2/internal/buffer/buffer.go:807 (0x8670b4)
github.com/zyedidia/micro/v2/internal/buffer/buffer.go:392 (0x864485)
github.com/zyedidia/micro/v2/internal/buffer/buffer.go:261 (0x862fc5)
github.com/zyedidia/micro/v2/cmd/micro/micro.go:203 (0x8f3e76)
github.com/zyedidia/micro/v2/cmd/micro/micro.go:331 (0x8f4793)
runtime/internal/atomic/types.go:194 (0x43e99b)
runtime/asm_amd64.s:1650 (0x46fd01)

Uncommenting the "rules" section stops Micro from crashing.
Micro should load this perfectly fine, despite just being a verbose version of --.*$, or should properly complain of a malformed file.
Specifications

Ubuntu 20.04.6 LTS

micro: 2.0.13/68d88b57 via snap
term: SSH --> Debian

Debian 12.7 / KDE 5

micro: 2.0.11/<no hash in output> via apt/bookworm
term: Konsole/pwsh

This should be fixed on master (https://github.com/zyedidia/micro/pull/3458), although there has not yet been a release yet since. You may build micro from source or download the nightly release to get the fix.

More precisely it was fixed with #3213, which is included in v2.0.14.
Afterwards micro doesn't crash, but you will face the situation #3458 addresses.


Fuzz lsm/tree.zig

So far this is only hitting the same compaction iterator bugs as lsm_forest_fuzz.
TODO:

Rebase on https://github.com/tigerbeetledb/tigerbeetle/pull/196 and use parse_fuzz_args

It's just a draft because I want to merge segmented arrays first and then use the fuzz utils in here.
For the varying workloads, there are a lot of things we can try but I think it makes sense to wait until the low-hanging crashes are fixed. Can't tell if new workloads are improving coverage if everything always crashes in the same place.

@sentientwaffle This is ready now. All that changed since your last review is rebasing on main and using test/fuzz.
I'll do more workload variations in later prs. Going to look into storage size first, since the space amplification in fuzz tests seems really high.

@sentientwaffle Ok, test.zig is back.

Other than that one note it LGTM. I do think we will want to expand the tree fuzzer as time goes on, but this is fine for now.
And once the forest test covers checkpoints we can remove lsm/test.zig.

:+1:
I put a lot of todos in https://github.com/tigerbeetledb/tigerbeetle/issues/189. I already have checkpoints in https://github.com/tigerbeetledb/tigerbeetle/pull/214, although not crash/restart. I'm focusing on space leaks first so that we can run the fuzzer for longer.


Compare a binary file with a file containing the source code

Hello,
I am currently using ghidra for reverse engineering and wondering if it is possible to compare the binary file I am disassembling with the source code of an SDK used by the binary on which I am am working?
Is it possible for Ghidra to do this work for me?

What is your objective, to identify the functions in the SDK?
I believe Ghidra has some kind of Function ID / FLIRT style functionality which is covered in the documentation.
You'd need to compile the SDK with debug information on, ideally with the same compiler as was used to compile the binary you're working on. Take the object files and turn them into signatures which Ghidra can load and use to identify the functions by pattern.

I have a similar question. Imagine I have a version of original source and a compiled binary which may have been done with a few changes that were never committed to source control. I essentially want to reverse engineer the changes.
Not expecting that Ghidra can do this easily. Just asking a question.

Ghidra has the ability to compare differences in 2 binaries, but has no means to work with source code.


Move Sport enum somewhere else

Right now the Sport enum is hard-coded into the app, meaning should a new sport ever be added, everyone would need a new update, and worse, users without the update would have their apps crash. This needs to be in a central, updateable location.

Related: What should we do about icons? Personally I think they're a nice touch, but if they really are the only cause for crashing everyone's apps it might just not be worth it.

Closing because sports need to be reworked as a whole


Making display and editor templates use HtmlString instead of normal strings to improve performance.

https://github.com/aspnet/Mvc/issues/830

/cc: @rynowak @pranavkm

Where are the perf numbers?

@sornaks, Thanks for signing the contribution license agreement so quickly! Actual humans will now validate the agreement and then evaluate the PR.
Thanks, DNFBOT;

Closing per discussion at standup, we're going a different way with this change.


Imports of Vue SFC not recognized unless ".vue" added to import

I've got an existing large Vue 2 project, that is itself added on to a preexisting Python project. I'm using webpack to compile things and working entirely with single file components (.vue files). I've been working primarily out of PyCharm but I'm trying to get VS Code with Volar working on this project. Everything is working fine when developing under PyCharm, in terms of my paths being recognized etc.
After some tinkering, for the most part, everything seems to work in VS Code. However one issue I'm running into is that Volar doesn't recognize import statements of my SFC Vue components unless I add ".vue" to the end. For instance, this works fine in PyCharm and webpack:
// This is a .vue file
import MyHappyComponent from "~/components/MyHappyComponent"

// This is a .js file:
import myJSLib from "~/js/myJSLib"

Under Volar, it doesn't recognize any of the Vue SFC imports unless I add .vue to the end. The JS imports work fine w/o an extension.
// Add .vue and it works
import MyHappyComponent from "~/components/MyHappyComponent.vue"

// Still works:
import myJSLib from "~/js/myJSLib"

I'd really prefer not to have to go change every import line in every Vue file if possible. This seems like it should be something that works. Any ideas are appreciated.
// volar.config.js at project root
module.exports = {
  settings: {
    "vetur.useWorkspaceDependencies": true,
    "vetur.experimental.templateInterpolationService": true,
    "vetur.experimentalCompatMode": 2,
  },
  projects: [
    {
      root: "./jx/static",
      jsconfig: "./jsconfig.json",
      package: "../../package.json",
    },
  ],
}

// jsconfig.json at project root
// note that `jx/static` path is the root of all JS and Vue files
{
  "compilerOptions": {
    "baseUrl": "./jx/static",
    "traceResolution": true,
    "paths": {
      "~/*": ["./*"]
    }
  },
  "include": ["jx/static/**/*"],
  "exclude": ["node_modules", "wtp", "dist"]
}

Setting these options doesn't show much of anything interesting:
  "vue-semantic-server.trace.server": "messages",
  "vue-syntactic-server.trace.server": "messages"

I think Volar should have a setting to not add an extension with the auto-import feature. This will work with the moduleSuffixes typescript config. https://www.typescriptlang.org/tsconfig#moduleSuffixes
We have a big code base with thousands of composants and we are converting progressively components from non SFC vue-class-component to SFC options API and to convert progressively, we need to trick typescript to priorise a file with ts extension sometime instead of vue extension. So our imports of vue components are always extensionless.

See https://github.com/johnsoncodehk/volar-starter/pull/10#issuecomment-1436077234

@johnsoncodehk, does my comment change something? You posted your last comment in the same timeframe of mine. I was wondering if you have read it before closing this issue.

Vue 3 no longer supports this, and it's now considered bad design, which is a big reason why Volar decided not to be backwards compatible with this behavior. Thanks for pointing out moduleSuffixes, I thought it was helpful to some people.

I understand for Vue 3 but in my case, we are still in Vue 2.7 and my partial tsconfig setting is like that
"moduleSuffixes": [
            "",
            ".vue"
        ]

We are migrating non SFC vue-class-component to SFC options API with defineComponent.


OrmLite Loaders and database connection loss at configuration changes

Hi,
I'm facing a database connection issue after configuration changes.
I'm using a single activity which extends OrmLiteBaseActivity. I also use an OrmLiteQueryForAllLoader in this activity to load my persisted objects.
At configuration changes, the activity is destroyed, so the database helper close the database connection since nobody use it anymore. Then the activity is recreated, leading to a new database connection.
The problem is that OrmLiteQueryForAllLoader (which is kept alive even at configuration changes) retains a Dao object with the first created dabase connection. After a configuration change, this connection is closed and this leads to a IllegalStateException since the retained Dao tries to use a closed connection.
We need a way to keep the connection opened even when all activities are destroyed, maybe by retaining it in the loaders ?

To be 100% clear on this.  You can, and should, keep your db connection open.  I wrote the original version of the base activities that open/close the db connection, and have since done a lot of research and testing on this.  You should keep a singleton pointing at a single open helper instance.
See: http://stackoverflow.com/a/3689883
And: http://touchlabblog.tumblr.com/post/24474750219/single-sqlite-connection
And (more formally): http://stackoverflow.com/a/12715032
You are correct.  I imagine if your db is closed on rotate, your loader is going to freak out if its holding onto Dao.  If you're going to change things, though, you'll need to change ALL of your base classes.  The key to good DB health is one OpenHelper instance.
I just realized how old this bug was, but its probably good reading if somebody else is having the issue.
This also improves my argument to deprecate the helper activities ;)

OK, I understand.
The problem here is that the documentation encourage to do what I did, I mean use OrmLiteBase classes to manage access to the database helper whereas it seems that it is not the right way to go.
So I agree, the helper activities may be deprecated and the documentation updated to explain the good way of doing (using a subclass of OrmLiteSqliteOpenHelper as singleton ?).

I'm with you.  I have another potential solution, but I'm reluctant to put more work into the helper classes.  Its sort of complex to explain, unless you have a deep understanding of Android threading.  Essentially, queue the closing call in the helper on the main thread, so by the time it gets there, if you did a rotate, the new activity would've incremented the db counter, and it won't close.  TBD.

It's becoming quite complicated !!
Why not letting OrmLite Loaders be connected to OpenHelperManager like OrmLite Activities are ?
The dao parameter in constructor would be replaced by a class parameter to let them call getDao() on the database helper (obtained thanks to the OpenHelperManager) and manage their own dao instance ?

@kpgalligan , what about initializing the singleton in Application.onCreate() ? This would permit to remove the context parameter in the singleton getInstance() function (which is only used for initialization).

@kpgalligan , what do you think of my previous proposals ?


tensorflow error

File "VehicleMoniter.py", line 32, in
raise ImportError('Please upgrade your tensorflow installation to v1.4.* or later!')
ImportError: Please upgrade your tensorflow installation to v1.4.* or later!

File "VehicleMoniter.py", line 32, in
raise ImportError('Please upgrade your tensorflow installation to v1.4.* or later!')
ImportError: Please upgrade your tensorflow installation to v1.4.* or later!

You need upgrade your tensorflow version ( pip3 install --user --upgrade tensorflow)

File "VehicleMoniter.py", line 32, in
raise ImportError('Please upgrade your tensorflow installation to v1.4.* or later!')
ImportError: Please upgrade your tensorflow installation to v1.4.* or later!

You need upgrade your tensorflow version ( pip3 install --user --upgrade tensorflow)

I have tensorflow version 2.0 but still I'm gettung the same error

it uses tensorflow 1.4 doesn't work with any else version install it using
pip install tensorflow==1.4

it uses tensorflow 1.4 doesn't work with any else version install it using
pip install tensorflow==1.4

Can you please help me solve this error..
with detection_.as_default():
NameError:  name 'detection_' is not defined.
I am stuck at the end. can you please check.. Thank you.

it uses tensorflow 1.4 doesn't work with any else version install it using
pip install tensorflow==1.4

Can you please help me solve this error..
with detection_.as_default():
NameError: name 'detection_' is not defined.
I am stuck at the end. can you please check.. Thank you.

answered the question in the raised issue, please discuss about a single issue in the respective discussions, else raise an issue.


[Q] Individuals defaultSchema "Measure" definition.

Hello,
In the individuals defaultSchema.json there is a definition of "Measure" object:
"definitions": {
  "Measure": {
    "description": "Measures(s) been taken from Individual. ...",
    "type": "object",

On the other hand, "mesures" property uses measurement.json:
"measures": {
  "type": "array",
  "items": {
    "$ref": "../common/measurement.json"
  }
},

It looks like the "Measure" definition is not used anymore and is an artifact left from the draft-3.
Dmitry

Good catch. Solved


Added option for how many subscriptions to send in a single call to t…

Added option for how many subscriptions to send in a single call to the server.  aws iotcore limits this to 8

I will merge this feature and do the changes on my own so that we have this feature available. @SeppPenner Do you want to add the notes to the wiki (only 8 topic filters are supported in AWS per subscription)? I will add this in code summary.

I have just added a small text to https://github.com/chkr1011/MQTTnet/wiki/Tips-and-Tricks#limits-for-multi-subscriptions-per-single-call. @chkr1011


The test binary fails to decode some well-formed base64-encoded strings

make
export j=""
for i in b a s e 6 4 t e s t; do
  j="$j$i"
  echo -n $j | /usr/bin/base64 | ./bin/base64 -d
  echo
done

Output:
b
ba
decoding error

base
base6
decoding error

base64t
base64te
decoding error

base64test

That's because /usr/bin/base64 prints a trailing newline. Try this instead:
#!/bin/sh
export j=""
for i in b a s e 6 4 t e s t; do
  j="$j$i"
  echo -n $j | /usr/bin/base64 | tr -d "\n" | bin/base64 -d
  echo
done


feat(vite): pass mode to preview command

Description

Fixed #6391
Additional context

What is the purpose of this pull request?

[x] Bug fix
[ ] New Feature
[ ] Documentation update
[ ] Other

Before submitting the PR, please make sure you do the following

[x] Read the Contributing Guidelines.
[x] Read the Pull Request Guidelines and follow the Commit Convention.
[x] Check that there isn't already a PR that solves the problem the same way to avoid creating a duplicate.
[x] Provide a description in this PR that addresses what the PR is solving, or reference the issue that it solves (e.g. fixes #123).
[x] Ideally, include relevant tests that fail without this PR but pass with it.

Vite 5.0.8 still doesn't seem to be using --mode on the preview command.

Vite 5.0.8 still doesn't seem to be using --mode on the preview command.

I think you need to open a new issue.

Vite 5.0.8 still doesn't seem to be using --mode on the preview command.

did you create a new issue?
It’s also relevant for me now


WP: stub the esc_xml() function

WP 5.5 introduced a new escaping function esc_xml().
This largely stubs that function, except for some real edge cases.
Tests based on the tests used in WP Core.
Ref: https://developer.wordpress.org/reference/functions/esc_xml/

Thanks a lot @jrfnl , again!
To be honest, I had been fine also with less complex (and so less adherent to core). After all, it's a stub. But now that you've created it, I'm taking as-is, hoping WP will not make changes to it.
Thanks again.

@gmazzap Well, to be honest, it's nowhere near the complexity as the implementation used in Core, but for stubbing purposes, it's close enough.


builtins: add parse and to_char_with_style variants for date types

PR: https://github.com/cockroachdb/cockroach/pull/68351
From release notes:

parse_timestamp now has a two-argument variant, which takes in a DateStyle and parses timestamps according to that DateStyle. The one argument version assumes MDY. These builtins have an immutable volatility. [#68351][#68351]

We probably don't need to document this built-in explicitly (it's included from the generated docs).


WithMaxDuration seems broken because StartTime is zero

Hey there! Thanks for this nice an comprehensive package.
Using v0.4.4, I've stumbled upon this bug:
package main

import (
	"fmt"
	"log"
	"time"

	"github.com/failsafe-go/failsafe-go"
	"github.com/failsafe-go/failsafe-go/retrypolicy"
)

type result any

var mehErr = fmt.Errorf("meh")

func retrier() (result, error) {
	policy := retrypolicy.Builder[result]().
		HandleErrors(mehErr).
		WithDelay(time.Millisecond).
		WithMaxDuration(3 * 24 * time.Hour).
		WithMaxAttempts(2).
		OnFailure(func(ee failsafe.ExecutionEvent[result]) {
			log.Printf("start time: %v", ee.StartTime())
			log.Printf("elapsed time: %v", ee.ElapsedTime())
		}).
		Build()

	return failsafe.Get(func() (result, error) {
		return nil, mehErr
	}, policy)
}

func main() {
	log.Println(retrier())
}

This code works as expected if WithMaxDuration is commented out. When it's like above, it'll fail immediately, because the unset StartTime makes ElapsedTime be extremely high:
2009/11/10 23:00:00 start time: 0001-01-01 00:00:00 +0000 UTC
2009/11/10 23:00:00 elapsed time: 2562047h47m16.854775807s
2009/11/10 23:00:00 <nil> retries exceeded. last result: <nil>, last error: meh

See this playground
Happy to put up a PR, but I wasn't about where to best put the StartTime = time.Now().

This has been fixed in v0.4.5.

Thank you!

Also released this in v0.5.0, which includes the new hedge policy.


Enhancement - support for hybrid model with auto deployment capability

Support for hybrid model
updates to the documentation

Reviewed and approved


Let's Blog with GitHub Blog App

GitHub BlogA dynamic, Notion-style WYSIWYG editor that innovatively utilizes GitHub Issues as its backend database.Structure:IntroductionInstallationDeploy Your OwnTech StackIntroductionGitHub Blog is a dynamic, Notion-style WYSIWYG editor that innovatively utilizes GitHub Issues as its backend database.InstallationTo use GitHub Blog in a project, you can run the following command to install it.git clone http://github.com/YouMingYeh/github-blogThen, you will need to fill in the environment variables in .env.example and rename it to .env.Note: You will need to create a GitHub App and install it on your repository. You can follow the instructions here. Also, you will need to grab the GITHUB_CLIENT_ID, GITHUB_CLIENT_SECRET, from the GitHub App you created.Afterwards, you can run the following commands to start the app.cd github-blog
pnpm install
pnpm run devNote that you will need to have Node.js and pnpm installed on your machine.Here's an example application: https://github-blog-blue.vercel.appDeploy Your OwnMake sure you have fill in the environment variables in `.env.example` and rename it to `.env`.Note: You will need to configure the GitHub App's Homepage URL and Callback URL to your deployment URL.Tech StackNovel is built on the following stack:- [Next.js](https://nextjs.org/) – framework- [Tiptap](https://tiptap.dev/) – text editor- [Novel](https://novel.sh/) - Template- [Vercel](https://vercel.com) – deployments- [TailwindCSS](https://tailwindcss.com/) – styles- [pnpm](https://pnpm.io/) – package manager- [TypeScript](https://www.typescriptlang.org/) – language- [GitHub API](https://docs.github.com/en/rest) – backend- [GitHub OAuth](https://docs.github.com/en/developers/apps/building-oauth-apps) – authentication- [GitHub Issues](https://docs.github.com/en/issues) – database- [Shadcn/ui](https://ui.shadcn.com/) – components

That's awesome!

Can't wait to try it out!!!


Back to active ... lets clean the house?

Ok guys .. @0-kaladin @james-lasersoft @redfast00  ...
And more active contributers ...
Ill be slowly coming back to active and supporting this amazing project...
this project clearly got a whole lot of visibility and fasts growth, and i believe there are a couple of things we should endorse
First and foremost, We need to better highlight users that PiVPN is a Tool (or Installer) that installs openVPN with pre-configured standard settings and not a full fleged VPN software.
with the advent of privacy (pseudo) paranoia, everyone wants a VPN without even realize what that really implies or understanding the basic concept of VPN Server!
for this topic i will work in some possible Use cases and scenarios, and to get them placed somewhere where ppl can really read and learn about what a VPN is and if they really need it or not!
Also, There are a lot of issues here that are not AT ALL Related with pivpn code .. this needs to end .. because we end up loosing more time providing IT Support than fixing and improving this tool!
Here i ask you guys for opinion and help ... What you think we should use to drive people away from github with that kind of issues?
I'd suggest creating more comunity driven like a subredit for PiVPN where users can go and post their use cases, ask for help and so on .. in similarity of what happens with pi-hole, what you think?
Unfortunately i don't have Enough karma for that as i am not a reddit poster, more of a reader!
If you have a better solution... Be aware i am more than glad to host any kind of forum or other platform on my servers!
At last but no the least ... The issues tab needs a big cleanup.. and once we get to a solution to drive users away with "IT Support" issues ill be closing and driving users away to the new "general Support" area!
Then ill focus again on more code and fixing issues.
What you think? Any Suggestions?

I agree with this. The issues section has become almost entirely a support section rather than a bug report. It would be good to have another resource for users seeking help. We could even have a tutorial and FAQ already posted. We could use reddit or we could create a Wiki for it.

yes, please.  github bugtracker shouldn't be abused as a user-support tool. please open up some forum or mailing list. even some chat/freenode via web would be better then the current method

there's actually already a sub reddit with the PiVPN name
https://www.reddit.com/r/pivpn/
not sure who has control of it tho

Cool, for some reason i couldn't find that redit ...
does anyone knows the owner of that subredit?
is IAintShootinMister around? =p
maybe that will need bit more mods overthere

i discovered pivpn just yesterday and yes a dedicated forum of some sorts would be nice since i have more advanced questions
so reddit is the place so far? discord could also be a place since it allows text chat (ie not limited to voice chat)

@4s3ti you need people here that can drive people with support questions toward another platform?

@boelle i think the place to go should definitely be reddit.
but for now need to find who owns that subredit so we can throw more mods there ..
then ill start drive ppl and non code related issues there.

hehe, no problem with that :-D
i just thought that discord could be an alternative to reddit should contact to owner fail
i tried to contact you on twitter but for some reason i could not send a DM

@boelle discord is also a good option .. but lets stick with reddit for now and lets see where it leads us.

you need people here to guide people with support Q's to reddit? i'm home going so i have plenty of time to put on labels and close issues that are not bugs

@4s3ti ,
For several reasons, I've made you a partial mod there. You have the ability to do everything except for add moderators or remove them, and by proxy, me.
As you have no karma and I have no way of verifying that you are the same 4s3ti who controls the github account, I'll be leaving it this way until my suspicions are satisfied.
I am a huge fan of the pihole project and have made great use of it over the years. The safety and privacy of the pivpn community is of the utmost importance to me.
I hope you can understand and respect my reservations,

IAintShootinMister

Additionally, I am excited to see this project be cared for again and hope to contribute where possible. If that's from assisting with the subreddit, I'll serve diligently.

Hi @justinamcafee yes it was me indeed, yes the account was freshly created for this sole purpose.
Thank you for your fast action and for being carefull!! =D
I appreciate your reservations and I can go with that and i really appreciate your caution!
we could use a couple more of mods Ill throw some names here please reach out to @justinamcafee ... if you all agree and want to assist with this one.
@james-lasersoft as the new "owner"
@0-kaladin @redfast00
and some of the most active useres that kept the boat floating ...
@orazioedoardo @Giraffe1966 @devZer0
@boelle I really appreciate your offer and help! however i can't grant you any previleges and at this stage we don't really know you elevate your privileges here, so ill still be trusting in our most active users that kept the boat floating! in our absence.

no problemo
and yes github does not allow granular control, its either full access or not
there is no way to give a user rights to only open and close isses and do labels, i have tried that on the marlin firmware project and github said directly it cant be done

@4s3ti  Sounds good, also, as a welcome back, you might place together a few sentences for the subreddit, and we'll pin it to the top noting that its:

an actively maintained support forum
an actively maintained project
determine  some form of template for reporting within the subreddit

Additionally, since this is a refresh, might I bend your ear and suggest the wireguard protocol? If we could leverage the simplicity of pivpn, I think the future road map could include conversion from openvpn to the wireguard vpn with a *substantial* increase in throughput, security, and simplicity.
I began using the wireguard service in pivpn's absence and have had amazing results.

oh... thought/idea just came in my head
since the script makes it VERY easy to setup a server, could there be a script that makes setting up the client side of things? there might be but them i'm blind :-D

@boelle  Client side scripts are unnecessary as of now, it's as simple as

install client
click certificate

As its done through a gui, I'm not sure of a use case. And while server installs can be standardized to a point, client installs would need to cover, the iOS app, the macOS app, the Windows app, the Linux network manager, and the android app.

oh i was thinking on the pi only, and it might be simple once you know how to do it
but from CLI how could it be done? and i mention CLI as i intend to use a headless pi with a 4g dongle as the client "out in the field"

I don't see a real bennefit of a client side config to be honest!
about the wireguard ... might be a good adition indeed!
however for now i'de like to focus in getting the house and the code clean, fix some bugs that might be around get back on track to then focus on growth and expanding new features ... might sound a bit conservative ... but at this time i consider to be the best approach ... but suggestions are always welcome!

I personally have a standard method of installing on my clients. Most of my users are headless servers so I move the client ovpn file to an ftp server and copy/paste a quick script that installs OpenVPN, ftp's the ovpn file (keyed from the hostname) and starts everything running.
I also use pivpn-gui for management. This makes everything really simple.
I will look at that reddit feed and see what can be done to push user issues over there to clean some things up.

the one benefit from a install script for the client side is that it makes it dead simple
and the more simple things are the more users it will attract, and also it will reduce the number of questions etc as people just run a script and it takes care of the rest
i had big doubts on getting the server side to run as i have tried it before with guides and manual entry of commands, but the pivpn install script made it dead easy and i had server tested and running in 30 mins or so
and its just my guess but i guess most supports Q's are related to how to set things up etc etc
but again its just my 0.02$ worth of thoughts

@james-lasersoft would you mind sharing how you do it?

@james-lasersoft
thanks :-D
i might take bits of it as i do not have a monitor hooked up to either server or client
and i guess the gui is for linux only?

@boelle
I do all this through SSH as the VPN server is headless and clients are installed elsewhere.
The GUI is web based so no worries. Makes PiVPN really simple to use. Look for OpenRSD here on GitHub.

@james-lasersoft nice :-D
seems that this "crazy" project of mine will see the light of day anyway
not sure if i mentioned it, but its going to be an a remote controlled rc car(parcel delivery robot thing) just to keep me busy and sane

@james-lasersoft Q: the ca.crt is in /etc/openvpn/easy-rsa/x509-types right? its the only directory where i can see a file named ca, but it does not have the crt extension
but i did manage to make the file with fixed ip on the server in /etc/openvpn/ccd/4grover
i assume the config file is the ovpn file with extension renamed to conf? i'm at the #download config file and ca.crt step right now

The certs are included in the ovpn file.
James Arnold
Lasersoft
On Wed, Apr 24, 2019, 14:03 Bo Herrmannsen<EMAIL_ADDRESS>wrote:

@james-lasersoft https://github.com/james-lasersoft Q: the ca.crt is in
/etc/openvpn/easy-rsa/x509-types right? its the only directory where i can
see a file named ca, but it does not have the crt extension
but i did manage to make the file with fixed ip on the server in
/etc/openvpn/ccd/4grover
i assume the config file is the ovpn file with extension renamed to conf?
i'm at the #download config file and ca.crt step right now
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/pivpn/pivpn/issues/723#issuecomment-486384317, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AI3ESDYJNVXNPIEFBSNM3ELPSCVHHANCNFSM4HHW5SKQ
.

so basicly i just copy the ovpn to /etc/openvpn/ but change the extension to .conf
and then run this: openvpn --config /etc/openvpn/4grover.conf --daemon  ?

how do i check if the client has opened a connection?

Correct. Then give the ifconfig command and you will see the tunnel.
James Arnold
Lasersoft
On Wed, Apr 24, 2019, 14:14 Bo Herrmannsen<EMAIL_ADDRESS>wrote:

how do i check if the client has opened a connection?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/pivpn/pivpn/issues/723#issuecomment-486388099, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AI3ESD2RTTF4IRXS76A5Q33PSCWRPANCNFSM4HHW5SKQ
.

:-( no luck
i think its this part that screwed up
#create an ovpn file without password on the client cert and all will be well
how do i do that?

i do see a tunnel on the server, but not on the client

just to sum it up, after i tested the server last night with phone and the openvpn app i have done this on server:
created a file in /etc/openvpn/ccd called 4grover (no extension) with this line in it:
ifconfig-push <IP_ADDRESS> <IP_ADDRESS>
then i copied the 4grover.ovpn from server to client /etc/openvpn but as 4grover.conf
then on client i run the command: openvpn --config /etc/openvpn/4grover.conf --daemon

All looks correct. When you created the client config did you give it a
password?
James Arnold
Lasersoft
On Wed, Apr 24, 2019, 14:27 Bo Herrmannsen<EMAIL_ADDRESS>wrote:

just to sum it up, after i tested the server last night with phone and the
openvpn app i have done this on server:
created a file in /etc/openvpn/ccd called 4grover (no extension) with this
line in it:
ifconfig-push <IP_ADDRESS> <IP_ADDRESS>
then i copied the 4grover.ovpn from server to client /etc/openvpn but as
4grover.conf
then on client i run the command: openvpn --config
/etc/openvpn/4grover.conf --daemon
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/pivpn/pivpn/issues/723#issuecomment-486392374, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AI3ESD5SZFLIBA4KQJS6BMTPSCYBZANCNFSM4HHW5SKQ
.

no, i do not know how to create one
but the ovpn file i created last night and copied to my phone is with password of course, and its the same file i copied to the client but with .conf extension instead

what might confuse me here is this:
#create an ovpn file without password on the client cert and all will be well
the on the client cert....
does this mean the pivpn add command ?? and that i should have done pivpn add nopass instead when i created the ovpn file?

Exactly. Create the client co fig with the nopass option.
James Arnold
Lasersoft
On Wed, Apr 24, 2019, 14:42 Bo Herrmannsen<EMAIL_ADDRESS>wrote:

what might confuse me here is this:
#create an ovpn file without password on the client cert and all will be
well
the on the client cert....
does this mean the pivpn add command ?? and that i should have done pivpn
add nopass instead when i created the ovpn file?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/pivpn/pivpn/issues/723#issuecomment-486397355, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AI3ESDZGVFCK2EJSX5S7DHDPSCZ27ANCNFSM4HHW5SKQ
.

i tried to revoke the ovpn on the server and create a new one without password
still no tunnel, is there a log i can dive in to and maybe figure what goes wrong

grep VPN /var/log/syslog
Apr 24 20:53:00 raspberrypi openvpn[548]: OpenVPN 2.4.0 arm-unknown-linux-gnueabihf [SSL (OpenSSL)] [LZO] [LZ4] [EPOLL] [PKCS11] [MH/PKTINFO] [AEAD] built on Oct 14 2018 Apr 24 20:53:24 raspberrypi systemd[1]: Starting OpenVPN connection to 4grover... Apr 24 20:53:24 raspberrypi ovpn-4grover[217]: OpenVPN 2.4.0 arm-unknown-linux-gnueabihf [SSL (OpenSSL)] [LZO] [LZ4] [EPOLL] [PKCS11] [MH/PKTINFO] [AEAD] built on Oct 14 2018 Apr 24 20:53:25 raspberrypi systemd[1]: Started OpenVPN connection to 4grover. Apr 24 20:53:35 raspberrypi systemd[1]: Starting OpenVPN service... Apr 24 20:53:36 raspberrypi systemd[1]: Started OpenVPN service.

have tried to install OpenRSD to see if that makes things more easy, but i have an 403 error and need to sort that if going the OpenRSD
but i guess its something simple that prevents the client connecting the server,
now i just fear that this turns in to a mile long support thing, which we should prevent in the first place

Good to see pivpn come back to life. Let me know if you need anymore volunteers for anything on this project?

@thewriteway there is a lot to do ... there is a lot of issues ...
everyone that wants to support can help cleaning .. going through issues and seeing if there is activity on it or not,  .. if it is not Code related redirect it to Reddit, and tag me so I can close it for example.
if you have the knowledge go through the code and fix any issues or excess code, I don't know .. just do it .. then the maintainers will give the final wording about it.
that's how the opensource world works, we are a community we all can do something! =D
having this said will start with this one .. closing this ... PiVPN redit is there for everyone to use! discussion, non-related code help etc etc...
Have fun guys! =D and thanks for the warm welcome and for keeping the boat floating!


CurtainGridLine.SkippedSegmentCurves fails to return multiple segments

Describe the bug
If a CurtainGridLine has SkippedSegmentCurves that are not continuous, this node returns no value.  The conversion to prototype attempts to generate a polycurve, but dynamo doesn't support discontinuous polycurves.
Steps to Reproduce
create a curtain grid and remove two noncontinuous segments, pass that CurtainGridLine into the node
Expected behavior
The DB class is a CurveArray, so i would expect it to return a list of curves instead of trying to generate a polycurve
My setup

Operating System: Windows 10
Dynamo version: <IP_ADDRESS>46
Rhythm version: 2022.11.3
Revit version: <IP_ADDRESS>

interesting! The Core Dynamo ToProtoType call tries to do that poly curve conversion for us. Kind of annoying, but I can fix.

Download the latest update to get access.


fixing strict null check errors (#61093)

First attempt on #61093.
Also saw that src/vs/platform/telemetry/common/telemetryService.ts (which is included in strictNullChecks.json) is using a return value of TPromise.as(undefined); and wondered if that was preferred

 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: charlottetan sign nowYou have signed the CLA already but the status is still pending? Let us recheck it.

@charlottetan Thank you, this looks good!
Do you want to repeat the same process for some other IPC files? I think these all have the same pattern
src/vs/platform/driver/node/driver.ts
src/vs/platform/localizations/node/localizationsIpc.ts
src/vs/platform/log/node/logIpc.ts
src/vs/platform/menubar/node/menubarIpc.ts
src/vs/platform/update/node/updateIpc.ts
src/vs/platform/url/node/urlIpc.ts
src/vs/platform/windows/node/windowsIpc.ts
src/vs/platform/workspaces/node/workspacesIpc.ts

We should handle all of these ipc cases in one pass to make sure we are consistent. @joaomoreno @bpasero Is returning a promise of null correct? Should we reject the promise instead?

So something like this, but include the call name?
src/vs/workbench/services/search/node/searchIpc.ts:
throw new Error('Call not found');

Yeah!


table colors

Hi, i like your theme. 👍
But could you add some color for table cell's border or odd/even rows alternative background-color under Dark mode?
It's hard to see border in the currrent release.
Thanks.

Should the header be bright (using primary accent color?) or stick with grayscale..  more or less variation between rows? (this is subtle):

First pass is delivered (just update the theme): 40f4f2fbaa8cdaa94e10438fa6aca64bca9c5353
Please see the README, there are a few changes.

Thanks your modifications. i've prefreed a little lighter border, so i add a CSS snippet to change it.


Support dynamic configuration of cluster registry API server via ComponentConfig

We should probably piggyback on what kube-apiserver does.

/sig multicluster

+1. I'd love to do this. I haven't heard of much movement to do this in the kube-apiserver, but I haven't looked that recently.

/remove-lifecycle stale

Note that this issue is no longer applicable because of the CRD migration done in #225, which removes crinit and the standalone API server.


Link metrics between panels/modules,  limit # of  panels, set panel order, and split-panes

Thank you for releasing such a valuable tool to the community, I just discovered it a couple of weeks ago on Reddit.
I've successfully installed GoAccess within CygWin on Windows and it works perfectly against my IIS logs.
I've three feature requests:

I have a number of redirection rules setup on my web severs and I'd like to find out which file requests are causing the redirects to be triggered.
I confess to not having studied the source code - but have two suggestions as to how this might be achieved:
Option A - Within the 'Status Codes' module, add the ability to highlight and select a specific code, and display the files that caused that code to be returned.
Option B - Create a new module and base it upon the 'HTTP 404 Not Found URLs' module - but allow the user to determine which status codes should be displayed within goaccess.conf and as command line parameters.

Is it currently possible to limit the number of modules that are displayed? I would like to open four instances of GoAccess within a 4x4 split-pane terminal window.
I only want to display two modules per pane because of the limited space within each pane.

Is it currently possible to change the order that the modules are displayed?

I'm glad you found it useful and thank you for the feedback!

As you said, having the ability to correlate metrics between panels/modules would be really nice. This is in the to-do list #138 and hope to get to it after some of the changes on the parsing/processing part that I've been working on.

Currently it's not possible to limit the modules to show, it's also on the list. The split-pane feature would be very nice to have, I'll look into this.

Currently not possible to change the order, however, I think implementing this, together with the ability to limit modules, shouldn't take too long. I'll take a look as well.

Please keep the issue open.

Thanks for the swift response.
I just want to elaborate a little further on point two. For my purposes at least, it wouldn't be necessary to implement split-pane within GoAcess itself. I was thinking of using ConsoleZ or ConEmu to create the a 4x4 split-pane window, like this:

Then within each pane, I would launch a separate instance of GoAccess. Within the fist instance I'd monitor the DEV web servers, in the second the UAT web servers, in the third the Staging web servers and in the fourth the production web servers.
The reason for wanting to limit the number of modules is because each pane will have very limited space.

BTW, the ability to display only certain panels/modules has been added. This is available from >=v0.9 and the command line option is --ignore-panel PANEL