Parsing arrays when parameter is of type array, style simple, explode false

Hi AJ, thank you for making this codegen for Elixir! I was running into a problem and was wondering if you could help/provide advice?
In my project OpenAPI spec, I am using a GET parameter specified like this:
get:
   parameters:
      ...
      - name: listOfIds
         in: path
         required: true
         schema:
            type: array
            items:
               type: string
               format: uuid
            minItems: 1
         explode: false
         style: simple

When I code generate, the typespec of the module says that the type listOfIds is of [String.t()] which is correct, however the generated module is like the following:
@spec module([String.t()], keyword) ::
          {:ok, SomeOutput.t()} | {:error, SomeError.t()}
  def module(listOfIds, opts \\ []) do
    client = opts[:client] || @default_client
    query = Keyword.take(opts, [:pageSize, :pageToken])

    client.request(%{
      args: [listOfIds: listOfIds],
      call: {Clients.CoreApi.MyCall, :module},
      url: "/listOfIds/#{listOfIds}",
      method: :get,
      query: query,
      response: [
        {200, {Clients.CoreApi.SomeOutput, :t}},
        {401, :null},
        {404, :null}
      ],
      opts: opts
    })
  end

If listOfIds = [AAAA, BBBB, CCCC, DDDD], I expect that url should parse to /listOfIds/AAAA,BBBB,CCCC,DDDD according to the OpenAPI Spec. However, what I actually get is /listOfIds/AAAABBBBCCCCDDDD (no comma seperation).
My current work around is to pre-join (Enum.join(listOfIds, ",")) my listOfIds before passing it into the module, but was wondering if there is way for the codegen to join array parameters, given that the typespec is aware that listOfIds is an array

Today I learned: so much. Thank you for sharing this.
The Parameter Serialization page you linked, and its 3.1.0 counterpart, show a few different variations of path parameter encoding I wasn't aware of. In the short term, you're doing the best thing: users of the generated function should pre-join the list of IDs. In the long term, the generator should have all of the information necessary to make better choices for these parameters.
I'll get to work on that. In the meantime, do you have an example specification that uses this type of path parameter? I'd love to add it to the list of examples I use to check for regressions.

Started some exploration in #62.

@aj-foster sorry for the delayed response! is the following what you mean for an example spec?
openapi: 3.0.2
info:
  title: Test api
  version: "0.1"
servers:
  - url: /v1
paths:
  /projects/{projectID}/something/{somethingID}/blahs:
    get:
      description: Returns the list of blahs for something.
      operationId: listBlahsForSomething
      parameters:
        - name: project
          in: path
          required: true
          schema:
            $ref: "#/components/schemas/project"
        - name: somethingID
          in: path
          required: true
          schema:
            type: array
            items:
              $ref: "#/components/schemas/something"
            minItems: 1
          explode: false
          style: simple
components:
  schemas:
    projectID:
      type: string
      format: uuid
    somethingID:
      type: string
      format: uuid


fix close button in order now and track order

the close buttons on top of both the sections  are messed up

hey @c4coderandcreator I would like to work on this issue, kindly assign it to me !

Sure go for it, make sure to read the contributing guidelines !!

hey @dakshsinghrathore  Any Update ?

Hi, could you assign this to me so I can work on this problem?


Grip doesn't render GFM checkbox lists

More information: https://github.com/blog/1375
-task-lists-in-gfm-issues-pulls-comments
Example: https://github.com/colepanike/Formicidae/blob/master/TODO.md

(Duplicate of #309)
This is unfortunately a known issue. It's in GitHub's hands now.
Feel free to comment on the related GitHub issue to show that people care about this. (You should also probably send an email to<EMAIL_ADDRESS>as indicated on that repo's Readme.)


UnitTests: Failures on armv7

With 19.08 release, I get the following error on UnitTests on armv7. (19.05 was fine).
[ 1527s] + ./build/UnitTests
[ 1527s] Running 1255 test cases...
[ 1527s] /home/abuild/rpmbuild/BUILD/armnn-19.08/src/backends/reference/test/RefEndToEndTests.cpp(391): error: in "RefEndToEnd/RefNoCopyWorkloads": check found != std::string::npos has failed [4294967295 ==<PHONE_NUMBER>]
[ 1527s] /home/abuild/rpmbuild/BUILD/armnn-19.08/src/backends/reference/test/RefEndToEndTests.cpp(394): error: in "RefEndToEnd/RefNoCopyWorkloads": check found == std::string::npos has failed [1324 !=<PHONE_NUMBER>]
[ 1530s] /home/abuild/rpmbuild/BUILD/armnn-19.08/src/backends/reference/test/RefTensorHandleTests.cpp(83): error: in "RefTensorHandleTests/ReusePointer": check handle.Import(static_cast<void *>(testPtr), MemorySource::Malloc) has failed
[ 1530s]
[ 1530s] *** 3 failures are detected in the test module "UnitTests"

There was a bug in RefTensorHandle, which prevented Import() from working properly on 32-bit systems. It has since been fixed in the master branch:
https://github.com/ARM-software/armnn/commit/d9f7c8ba3949823a623b407f4bd80d120ca0b5be

This fixed it, indeed. Thanks a lot!


Cannot add multiple Node PRO

I have one Lighting Node PRO already connected and working nice. But when i add one more both don`t work.

Is the first Lighting Node PRO a official one? When i connect two fake LNP at least one is working. I think that has something to do with the deviceID or the Serial Number are the same on all Arduinos. Currently the deviceID is hard coded, you can try to change it for one LNP to see if it works. The Serial Number is not working at all (I/O Status 31 Ein an das System angeschlossenes Gerät funktioniert nicht.). Here you can enter a Serial Number but for me it don't work.

Two of them are fake. I will try to change Serial No. Also I tried to change one of them to "Commander Pro". Windows shows it connected. But icue don't even recognise CP in the device list.

Commander Pro has an extended command set that is not implemented, so when iCUE try to use these commands an error code is returned.

Serial Number and DeviceID must be different, then iCUE show both.

Don't use 00 00 00 00 as DeviceID, this will generate a random one.

I tried ,
device ID
uint8_t DeviceId[4] = { 00, 00, 00, 01 };
SERIAL_NUMBER
#ifndef SERIAL_NUMBER #define SERIAL_NUMBER "1EA000060904BAAEFB66DF55421900F8" #endif
But still same.

Did you use the latest master branch, with the fix?

Verify in device Manager (Windows) that the serial number is set

yes, i checkout the latest master branch. I will check.

i`ve tried with your the latest commit.
I am using 2 ARDUINO. 1 LEONARDO and 1 Pro Micro.
Both are listed as Lighting Node Pro at devices menu in Windows 10.
When I check within USBDeview Serial Numbers setted OK.
Device ID`s seems OK with DeviceIDTool.
But now, None of them are recognised in iCUE.
LEONARDO
DEVICE CODE : 55 03 EE 09
SERIAL : 3DG000070805CFFEFC77DF55856300A5
Pro Micro
DEVICE CODE : 50 04 FF 20
SERIAL : 7DH000070805CFFEFC77DF55856300E7
iCUE Ver : 3.14.104

 for me it's working.(the numbering comes form the tests with different ids)
You have two options:

DEBUG mode: add -DDEBUG in the board.txt in the same line where the -DSERIAL... is
in the code apply the diff debug.diff.txt, upload and open Serial Monitor.

Use system information viewer it supports the Corsair protocol on the PC side. The tool is very complex but really helps debugging.
[USB Bus] shows information of all USB devices(Serial Number)
[Status |▼]->[Link Status] shows information on Protocol layer
it's best to read the "AIO Device Control" section on the website

I tried lots of things.
With old commits when SERIAL NUMBER is Status 31 A device attached to the system is not functioning they work separately. But not together.
With the latest commit, no single unit is working.
Below my results, i hope they are useful.

Please use the "Release" configuration in Visual Studio.
It looks to me that the Serial Number is a hex number, so only characters 0-9 and A-F are allowed.
If you use the debug flag you always have to connect a Serial Monitor, otherwise the Arduino does not work properly.
The Command: 6B is strange, it does not exist.

Please make as few changes as possible from the example, so change the CHANNEL_LED_COUNT to 50 and revert all other code changes. Only change one digit of the Serial Number and use a simple DeviceID like 00 00 00 01 so its easy to reproduce your setup. Than make sure the single Arduino works with the latest master branch and setup hardwareplayback and close iCUE, so the Arduino is in hardwareplayback mode and the settings are saved in the EEPROM. Restart the iCUE Service, so the disconnected devices are not shown in the UI, this may require a PC restart because of a bug in iCUE. Do the same with the second Arduino. After that unknown led channel mode should no longer be logged to the Serial Monitor.

i tried exactly what have you said. I gave my hours but still same. If there is serial number registered it just dont work. Only works single node when it says Status 31 A device attached to the system is not functioning. Maybe the problem is somewhere else on my system I don`t know.

Can`t you make that SERIAL NUMBER and DeviceID thing auto generated?

The DeviceID can be auto generated.
Set it to 00 00 00 00, iCUE will generate a new one next time it connects to the LNP.

@omerorhan did you use the -DDEBUG flag when getting Status 31 A device attached to the system is not functioning?

1- I delete everthing under AppData\Local\Temp.
2- I change the Serial Number and set -DDEBUG on.
3- Start From VS2019(VS2017) at Release Mode.
2- Open Serial Monitor From Arduino IDE.
3- Restart From ICUE Settings.
And it`s working. I saw the serial number is OK.
Then i restart computer.
Repeat the process again without -DDEBUG.
When I restart ICUE nothing happens. It just don`t work.
When I try to change DEVICE ID, i realize that its always 00 00 00. It dont change.

single Arduino or both?

single

I think there is a memory leak, buffer overflow or a timing issue somewhere in the library.

I left Serial Number empty. Only Change DeviceId.
They both works now :)

WTF!? OK, leave it that way.

@omerorhan I now have fixed several problems and reduced the length of the Serial Number. I tested with two Pro Micro with Serial Numbers FB66DF55421900F5 and FB66DF55421900F6, DeviceIDs 4E 91 67 B9 and 52 42 79 85, without -DDEBUG flag and in release mode and having no problems. Please can you try and report any problems.

@Legion2 i tried and it is working without problem. Thank you.


Want To Contribute

Hii!!!
I'm Ujjwal, I gota visit to your project AQI-Prediction-Model, i want to contribute to this project for a good cause, is there is a Open Source Project, means should i open for contribute to this.... @vidhiisaxena . As this is a mandatory for Delhi, as u know the condition of delhi nowdays. So i also think to create that project but if i contribute to your project so its great...

Hi, this is not an open source project currently, We are still working on the accuracy of the model and other aspects. But help is always appreciated :)


update jwt docs for the two new property keys

See https://github.com/adobe/aio-cli-plugin-app/pull/243
and https://github.com/adobe/aio-lib-ims-jwt/issues/18
Since https://github.com/adobe/aio-lib-ims-jwt/issues/18 is a breaking change, we bump this to a major version as well, after changing the dep version in package.json

fixed in https://github.com/adobe/aio-lib-ims/commit/f0702c82333d2d00447c79b08c545a53a1128831


Fix typo (Flask-OpenID -> Flask-OIDC)

While I'm here, may I also ask what is the relationship between Flask-OIDC and Flask-OpenID? They seem related, but neither seems to be a drop-in replacement for the other, and neither's docs explain this.
All I can tell is that Flask-OpenID has a much higher "Used by" count on GitHub (currently 3k vs. 169), Flask-OpenID is less frequently and recently updated, and this project's maintainer, @puiterwijk, appears to have taken over maintenance of Flask-OpenID as well (hence this typo?:).
Thanks in advance for any clarification!

@twosigmajab If you want this resolved i'm maintaining a fork of this with some added extensibility. Feel free to open a PR here:

https://github.com/svintit/flask-oidc-ext/pulls

Thanks for the heads up @svintit, but I'm no longer considering using any of these projects at this time.

No worries @twosigmajab best of luck!


Fix display issue when using GMax formes

I noticed while working on adding specific EOT effects from GMax moves that those would not appear if dynamaxing a GMax forme. For example, selecting Charizard-Gmax standard set, then checking the Dynamax button, would transform Flamethrower into Max Flare instead of G-Max Wildfire.
The effect was purely visual before, so it wasn't much of an issue, but since EOT effects such as G-Max Wildfire will be added to the calculator in the near future, it would be interesting to have this behaving correctly now. This should hopefully be done now.

Yup, it's removed!

Thanks! I'll take a look at your other PR in a soon, this one was just shorter and I'm eating lunch :)


[WIP DO NOT MERGE] Travis updates

@hoffmabc gosh, how about a commit that doesn't break Travis!

OK @jjeffryes this bad boy is ready to merge.


User config is not respected

$ cat ~/.config/pkgdev/pkgdev.conf
[DEFAULT]
commit.signoff = true

But pkgdev commit is not signed :(
$ pkgdev --version
pkgdev 0.2.9

what are your values for:

${XDG_CONFIG_HOME}
${XDG_DATA_HOME}

And also, if you pass it explicitly, does it sign it now?
pkgdev commit --config ~/.config/pkgdev/pkgdev.conf

Guess somehow related to #175


File Picker

File picker is not working to pic profile image
Image provider: AssetImage(bundle: null, name: "/data/user/0/com.example.chatapp/cache/file_picker/IMG_20220316_140627.jpg")
Image key: AssetBundleImageKey(bundle: PlatformAssetBundle#01252(), name: "/data/user/0/com.example.chatapp/cache/file_picker/IMG_20220316_140627.jpg", scale: 1.0)

maybe it works for you too. here


Bump up scope mismatch log from debug to warn as it is security violation

This issue is opened in light-java-rest as it is part of swagger-security


Error: Error storing file to the images store: undefined

events.js:141
throw er; // Unhandled 'error' event
^
Error: Error storing file to the images store: undefined
at [object Object]. (packages/cfs_collection.js:121:19)
at emitThree (events.js:97:13)
at [object Object].emit (events.js:175:7)
at Writable. (packages/cfs_storage-adapter.js:249:26)
at emitOne (events.js:82:20)
at Writable.emit (events.js:169:7)
at packages/cfs_dropbox.js:337:19
at /app/programs/server/npm/node_modules/meteor/cfs_dropbox/node_modules/dropbox/lib/dropbox.js:1458:18
at Client.Dropbox.Client.Client._handleXhrError (/app/programs/server/npm/node_modules/meteor/cfs_dropbox/node_modules/dropbox/lib/dropbox.js:2161:7)
at Xhr.onError (/app/programs/server/npm/node_modules/meteor/cfs_dropbox/node_modules/dropbox/lib/dropbox.js:1075:24)
==========================
What kind of error could this be?
This error doesn't show up on development env, but shows up on production env.

You could add FS.debug=true in global code to get more info.
You could try meteor --production locally and see if you get the same error.

Ok, will do so and put the log.
It doesn't happen if I do meteor --production
On 25-Apr-2017 9:54 PM, "Ralf Brandenstein"<EMAIL_ADDRESS>wrote:

You could add FS.debug=true in global code to get more info.
You could try meteor --production locally and see if you get the same
error.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/CollectionFS/Meteor-CollectionFS/issues/1002#issuecomment-297085661,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AKQYRQZhKQeGtR3s2YN-hrR0q2Bnr96yks5rzh5WgaJpZM4NHVil
.

I get the same error on my apps localy when I try to store image with dropbox...
Did you finaly find where the problem come from?

I got the same problem; anybody?


parse error on @-pattern with spaces

This is hlint 3.1.1 (at cf71669e12d1920e697b0490e67c6df19e7fa50a).
Given this module, which ghc loads fine:
    f :: Int -> Int
    f x @ y = y

Hlint says:
    Bug.hs:2:1-7: Error: Parse error: Expression syntax in pattern: f x @y
    Found:
	f :: Int -> Int
      > f x @ y = y

It's happy if I delete the spaces around @.  Maybe it's confused by TypeApplications?  I don't have that enabled.

HLint implicitly enabled TypeApplications, so yes, I suspect it's confused by that. I was aware type applications gave this incompatibility, but decided enabling TypeApplications by default was still a good idea because:

Almost everyone writes the @ with no spaces, e.g. x@y.
TypeApplications are becoming more and more common - they're pretty popular now.

You can fix it either by removing the spaces (my suggestion) or by passing -XNoTypeApplications.

The rules are:

In prefix position with type applications, @ is a type application (e.g. fmap @Maybe);
In tight infix position it's the @ in an "as - pattern" (e.g. e.g.  f p@(a,b) = rhs)
In suffix position it's a parse error;
In loose infix position it's an ordinary operator or type operator (e.g. f @ g, (f @)).

Here the usage is loose infix.  ghc-8.10 doesn't do whitespace sensitive lexing so treats f x @ y as an as-pattern. Using GHC HEAD which implements GHC Proposal #229 https://github.com/ghc-proposals/ghc-proposals/blob/master/proposals/0229-whitespace-bang-patterns.rst you get:
Foo.hs:2:1: error: Parse error in pattern: f
  |
2 | f x @ y = y
  | ^^^

To be future proof you'll want to write it as @ndmitchell  says as f x@y.

Ah, thanks for the context @shayne-fletcher  - so the original code will become an error in the next GHC regardless. Even more of a reason for HLint to error on it now.

Hi, thanks for the feedback.
I was going to object that "lots of people like it" doesn't mean it should be the global default... that's what Haskell2010 is.  But if it's true that ghc itself is going to stop parsing it in the near future, then it's about to become the global default there too, at which point I think it's fine that hlint also do that.  We'll consider it an early warning system, though of course a generic parse error is not the nicest way to communicate that.
The context is that at work, TypeApplications is allowed but opt-in, while hlint is applied unconditionally.  However, I fixed up the existing code and coworkers also said they are fine with the no spaces rule.

Related update : https://gitlab.haskell.org/ghc/ghc/-/merge_requests/3387.


Custom className for component Card does not work

Bug report 🐞
Version & Environment

Version of browser: Chrome 84
Version of zeit-ui/react: 1.8.0-canary.7

Expection
In our examples/custom-styles:
I want to add custom class .my-card for the Card component, but it doesn't work, because the Card uses the tag style internally.
Actual results (or Errors)

// home.jsx
<Card shadow style={{ width: '500px', margin: '100px auto' }} className="my-card>
      <Text className="my-text">Modern and minimalist React UI library.</Text>
      ....
</Card>

// style.css
.my-card {
    background-color: grey;
}

Can it help you: #317 ？

Can it help you: #317 ？

I know several ways how to get around this :))) But I don’t want to do this, because I believe this is a bug and can be fixed.

Well, there is no plan to change the style solution in the short term, or, do you have any new opinion?

Well, there is no plan to change the style solution in the short term, or, do you have any new opinion?

No, thanks for the quick answer, I understand you. You can close this issue.

Sorry for not having a satisfactory solution, I'll keep looking into it, if I have a more elegant answer, I will remind you again.


Test that dask collections can hold scipy.sparse arrays

They can't do much with them because they don't support the ndarray
interface, but it's useful for dask-ml work that we can produce them and
then hand them off to dask.delayed or da.map_blocks workflows

[ ] Tests added / passed
[ ] Passes flake8 dask

cc @ogrisel @TomAugspurger

Merging tomorrow morning if there are no comments.

Thanks that looks good. Do you think it will help with https://github.com/dask/dask/pull/2842. I will try to have a look.

Sorry I was confused #2842 was about the sparse.COO array (not scipy sparse matrix). I will have a deeper look at the scipy.sparse usage patterns.

No.  Most  Dask array operations still won't work.  However I think that this will be useful for dask-ml workloads where we mostly call map_partitions or map_blocks with scikit-learn functions on dask arrays and dask dataframes.

So dask array and dask dataframe can contain scipy sparse arrays well and we can apply functions across them, but the actual dask array and dask dataframe operations, like da.tensordot won't work.

Yes I just tried to play a bit interactively and indeed it's already useful as it is and probably enough for the dask-ml use cases.


Added a note on how to contribute in the README

Signed-off-by:Phillip Kruger<EMAIL_ADDRESS>As discussed in the community meeting, added more info on how to contribute

As discussed here: https://groups.google.com/forum/#!topic/microprofile/-o0Mqv4I2IY
Moved the "How to contribute" to a separate file.


prerel notes

Rendered section for review:
https://review.docs.microsoft.com/en-us/microsoft-edge/webview2/release-notes?branch=pr-en-us-1544#101053-prerelease

Docs Build status updates of commit 09faf30:
:warning: Validation status: warnings

File
Status
Preview URL
Details

microsoft-edge/webview2/release-notes.md
:warning:Warning
View
Details

microsoft-edge/webview2/release-notes.md

Line 50, Column 5: [Warning: hard-coded-locale - See documentation] Link 'https://docs.microsoft.com/en-us/microsoft-edge/webview2/reference/win32/icorewebview2experimental11?view=webview2-1.0.1056-prerelease&preserve-view=true' contains locale code 'en-us'. For localizability, remove 'en-us' from links to most Microsoft sites.
Line 51, Column 5: [Warning: hard-coded-locale - See documentation] Link 'https://docs.microsoft.com/en-us/microsoft-edge/webview2/reference/win32/icorewebview2experimental10?view=webview2-1.0.1056-prerelease&preserve-view=true#add_basicauthenticationrequested' contains locale code 'en-us'. For localizability, remove 'en-us' from links to most Microsoft sites.
Line 50, Column 5: [Suggestion: docs-link-absolute - See documentation] Absolute link 'https://docs.microsoft.com/en-us/microsoft-edge/webview2/reference/win32/icorewebview2experimental11?view=webview2-1.0.1056-prerelease&preserve-view=true' will be broken in isolated environments. Replace with a relative link.
Line 51, Column 5: [Suggestion: docs-link-absolute - See documentation] Absolute link 'https://docs.microsoft.com/en-us/microsoft-edge/webview2/reference/win32/icorewebview2experimental10?view=webview2-1.0.1056-prerelease&preserve-view=true#add_basicauthenticationrequested' will be broken in isolated environments. Replace with a relative link.

For more details, please refer to the build report.
If you see build warnings/errors with permission issues, it might be due to single sign-on (SSO) enabled on Microsoft's GitHub organizations. Please follow instructions here to re-authorize your GitHub account to Docs Build.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
Note: Your PR may contain errors or warnings unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel

Docs Build status updates of commit 3028ebc:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

microsoft-edge/webview2/release-notes.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel

Docs Build status updates of commit 47cb4aa:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

microsoft-edge/webview2/release-notes.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel

Docs Build status updates of commit 2b3fe39:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

microsoft-edge/webview2/release-notes.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel

Docs Build status updates of commit b116d25:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

microsoft-edge/webview2/release-notes.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel

Docs Build status updates of commit b7050e0:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

microsoft-edge/webview2/release-notes.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel


Take multiple photos in one shot

It should be configurable to take multiple images in one shot.
E.g. Camera2 on Android would support this natively

It's not possible without changing the whole implementation for both iOS and Android (because current components used don't support it), and we don't have the resources to do it, so closing.


ModelOutput does not contain Prediction

Following the example successfully, until trying
string sentiment = result.Prediction == 1 ? "Positive" : "Negative";
The Model that was created does not contain a Prediction definition.
Using MVC version 17.1.2
Microsoft.ML version 1.6.0

@v-Hailishi Can you confirm the consume page of the tutorial is still correct? https://dotnet.microsoft.com/en-us/learn/ml-dotnet/get-started-tutorial/consume

@beccamc Tried the steps using the latest main branch <IP_ADDRESS>1401, I also met the same error just like below picture.

@RichardClaxton I think you need to use .PredictedLabel.
@luisquintanilla Did this get changed in a new ML.NET version? Was there an item for updating this tutorial?

@RichardClaxton sorry to hear you ran into this issue. As @beccamc pointed out, try using result.PredictedLabel instead of result.Prediction.
using MyMLApp;
// Add input data
var sampleData = new SentimentModel.ModelInput()
{
    Col0 = "This restaurant was wonderful."
};

// Load model and predict output of sample data
var result = SentimentModel.Predict(sampleData);

// If Prediction is 1, sentiment is "Positive"; otherwise, sentiment is "Negative"
string sentiment = result.PredictedLabel== 1 ? "Positive" : "Negative";
Console.WriteLine($"Text: {sampleData.Col0}\nSentiment: {sentiment}");

@beccamc the changes I made were only reflected for the CLI, not Model Builder. I'll make the updates to the tutorial to fix this.

@luisquintanilla Are these updates in? Can I move to done?

@beccamc yup. Changes are in.


Error in check_gene_id (compareCluster)

Hi,
I am trying to use compareCluster to compare enrichment analysis of different RNA-seq made on Apis mellifera (Honeybee).
however, i have got an error message
Error in check_gene_id(geneList, geneSets) :
--> No gene can be mapped....
Here my explanation
gL1<- geneList with logFC and names (geneID) for Apis mellifera.
gL2<- is the same but for another geneSet for APpis Mellifera
Example:
geneID: 725165    726592<PHONE_NUMBER>19072 107965070 107964776 100577773 100578475
LogFC   1.190358  1.190266  1.189899  1.189409  1.188527  1.188432  1.188149  1.187474
When I run them as
gseKEGG(geneList=gL1,organism="ame", pvalueCutoff = 0.05, pAdjustMethod = "BH")
gseKEGG(geneList=gL2,organism="ame", pvalueCutoff = 0.05, pAdjustMethod = "BH")

they work perfectly but I soon I switch to compareCluster I have the error:
> formula_res <- compareCluster(geneClusters=gL1~gL2, data=universe_annotation, fun="gseKEGG", organism="ame",pAdjustMethod = "BH")

Error in check_gene_id(geneList, geneSets) :
--> No gene can be mapped....
I have tried:
gL<-list(p1=gL1, p2=gL2)
compareCluster(geneClusters=gL, data=universe_annotation, fun="gseKEGG", organism="ame",pAdjustMethod = "BH")

I have the following error message:
Error in compareCluster(geneClusters = gL, data = universe_annotation,  :
object 'grouping.formula' not found
I am not sure what I am missing here.
Thanks,
Phiphi

Hi there! I think you might be looking for the clusterProfile repository.
(this repository is the code of my bachelor's thesis, which is a visualization for differences between clusters)

Sorry, thank you @Yogu !


Have text disappear after a certain timeout

Hi Phalax,
Would it be possible to let the text disappear, after maybe 20 or 30 seconds? Now everything I type stays there until I type (lots) more. Which is a bit strange when starting a new screencast session. Alternatively maybe a hotkey to clear the buffer, but I can understand if you want to have as few hotkeys as possible, to avoind clashes with the app that is being demoed.
Jo

That would be easier to implement. See #4 .

That would be easier to implement. See #4 .

same as #4
Commit reference: 6cee338 c0fcff4


fix bug : uppercase is used in android

Description
在Android的WebRTC 中编码类型字符串使用的的是大写字符。
Uppercase characters are used to encode type strings in Android's WebRTC.
Reference issue
Fixes #...

Hi @zjzhang-cn
Maybe we should do case insensitive matching with these values like this? I believe Safari does lowercase

If you use lowercase characters, you will have the above problem on Android.


module DateTimeFormat

Targets to replace DateTimeIntl module with simplified uses and logic.

Coverage increased (+0.7%) to 45.604% when pulling 42d1cf2fd51e5aed8370d89d94c2b07c60bd9fc5 on u9520107:refactor/date-time-intl into 1abb42538d25992e6cbc2c73603910041039cdf0 on ringcentral:master.

rerun

Coverage increased (+1.7%) to 46.662% when pulling a9b38695127bf2f8766ffcee3cae068a4ee98387 on u9520107:refactor/date-time-intl into 1abb42538d25992e6cbc2c73603910041039cdf0 on ringcentral:master.

Coverage increased (+1.7%) to 46.662% when pulling 2f5060e82f9ac7a5898a626c9e6ffbb718d12296 on u9520107:refactor/date-time-intl into 1abb42538d25992e6cbc2c73603910041039cdf0 on ringcentral:master.


Security

In your blog post, you mentioned that the firmware can be updated wirelessly, and that that's important so that it's possible to "apply security updates for the wireless protocol". That begs two questions.

What is the wireless protocol currently doing for security? I wouldn't want my keyboard to blast every character I type through the air in cleartext.
What safeguards are there to prevent an attacker from "updating" my firmware wirelessly without my consent to, for example, turn off the encryption? I'm guessing there must at least be a reset button or key combo to put the board in bootloader mode.

you mentioned that the firmware can be updated wirelessly

Actually the firmware and layout can only be update over USB. I don't allow wireless updates because, as you suggest, it opens up potential security holes. What I meant to imply in that post, is that applying security updates would be difficult for most people if they had to recompile the firmware themselves. So I wanted to separate the layout from the firmware to make security updates easier for the end user.

What is the wireless protocol currently doing for security?

The wireless protocol use AES128 for encryption and should be resistant to eavesdroppeing, replay attacks, and key stroke injection. For the AES block mode, I use ECB block mode with a unique packet ID (UID) inside each block (similar to CTR block mode, except the counter is a part of the plaintext). The UID is implemented as the device ID + a packet counter.

Prevent eavesdropping: Usually ECB is not used in most encryption protocols as it is vulnerable to frequency analysis attacks because the same plaintext block will always encrypt to the same ciphertext block. However, since the plain text of each block contains a UID, this means that the cipher text will also be unique. Thus it is not possible for a passive eavesdropper to use ferquency analysis to infer typed keys from observed encrypted messages.
Replay attacks: Whenever a message is received from a device, the UID in the block is checked. If the counter part of the UID is smaller the most recently seen UID form that device, the packet is rejected as the device will never send the same UID in a packet twice. When a receiver is first turned on, it will request the current UID value of slave before accepting any communications. To insure that the UID value received form this request is authentic, a challenge-response aunthentication is used that relies on both device's using their pre-shared AES key to prove authenticity.
Key stroke injection: Using the ECB block mode with UID, it is possible to detect if messages have been tampered with. If an attacker where to try modify some bits in an intercepted cipher text, then according to the properties of AES, on average half the bits in the plain text would be flipped. This means that the UID will be changed to a random value. However, the code only accepts small increments in the UID's counter, so it will reject the packet as corrupt. If too many corrupt packets are  received, the receiver will require the device to pass the challenge-resoponse authentication again before more packets are accepted.

If you have any questions or concerns about the protocol feel free to ask.

I'll probably revisit this post someday after I read Cryptography Engineering, but this looks solid to me. You're clearly putting security first, which is so great to see!
Two more questions, and I'll close the issue.

How is the AES key distributed?
Do you have any protections in the bootloader against an attacker rewriting the firmware via USB?

How is the AES key distributed?

The AES key is saved in the RF settings file (example) and the user will upload this to each device in their wireless configuration, over a USB connection using the GUI flasher/loader.
The RF settings file only needs to be loaded once. Afterwards the user can update their layout without it. I'd suggest you keep it in a password manager vault or similar safe location because it contains the AES key.
After the AES key is initially programmed, there is no way to retrieve it from the device. If the user loses there RF settings file, then they will have to generate a new one.

Do you have any protections in the bootloader against an attacker rewriting the firmware via USB?

The bootloader I wrote for the ATxmega will only allow reads/writes to flash after it has erased the entire application section (where the encryption key is stored).  Also, when the bootloader starts, it will erase the entire contents of RAM before allowing the application code to start. This prevents newly loaded programs from trying to extract the encryption keys from RAM.
I have not finialized the nRF24LU1+ bootloader.
Also, I have to worry about the behaviour of the logitech bootloader when running from unifying receivers.  The unifying receiver bootloader does not erase the entire contents of flash, but it does clear the first half of the flash (it divides the flash into a data and code section and it only clears the code section). So when using it, the settings block must be stored in the code section of flash, which is not much of an issue since there is nothing preventing the firmware from reading/writing to that section.

Your answers here, and everything else about keyplus and the keyplus mini just look really, really amazing. Keep up the great work!


Fix for Issue #688

What this PR does / why we need it:

Creates Jenkins deployment as Pod in Kubernetes Cluster.
Utilizes OpenEBS as persistent volume claim.

Which issue this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close that issue when PR gets merged): fixes #
Fixes Issue #688
Special notes for your reviewer:
Signed-off-by: yudaykiran<EMAIL_ADDRESS>

Include a readme and screenshots on usage also along with this PR.

Added README.md containing steps to deploy Jenkins as a pod. The README.md file also contains the screenshots of the Jenkins UI launched by the Jenkins pod.


RocketMQ4.8.0 dledger cluster will switch master to slave when the message accumulation is close to 30 million

When the message accumulation is close to 30 million, most of the memory of my machine will be occupied by RocketMQ. I guess the master switch is caused by this.
In addition, after the master switch, the original master (now slave) TPS is much lower than the other two nodes, which will cause this node to always be unable to fully synchronize.

Are there any logs available for troubleshooting？

Are there any logs available for troubleshooting？

Are there any logs available for troubleshooting？

Are there any logs available for troubleshooting？

Are there any logs available for troubleshooting？

It can be reproduced stably, as long as there are enough news accumulated。You can reproduce it yourself. The phenomenon at that time was that when the message accumulation reached about 30 million, the java process occupied more than 20G of memory, and the master would not respond for a period of time. I guess it is because the accumulation of messages exceeds the memory size and there will be a pause for a while.

Are there any logs available for troubleshooting？

It can be reproduced stably, as long as there are enough news accumulated。You can reproduce it yourself. The phenomenon at that time was that when the message accumulation reached about 30 million, the java process occupied more than 20G of memory, and the master would not respond for a period of time. I guess it is because the accumulation of messages exceeds the memory size and there will be a pause for a while.

Are there any logs available for troubleshooting？

It can be reproduced stably, as long as there are enough news accumulated。You can reproduce it yourself. The phenomenon at that time was that when the message accumulation reached about 30 million, the java process occupied more than 20G of memory, and the master would not respond for a period of time. I guess it is because the accumulation of messages exceeds the memory size and there will be a pause for a while.

I will try to reproduce the issue.
In addition, does this issue exist in the lower version of the dledger?

Are there any logs available for troubleshooting？

It can be reproduced stably, as long as there are enough news accumulated。You can reproduce it yourself. The phenomenon at that time was that when the message accumulation reached about 30 million, the java process occupied more than 20G of memory, and the master would not respond for a period of time. I guess it is because the accumulation of messages exceeds the memory size and there will be a pause for a while.

I will try to reproduce the issue.
In addition, does this issue exist in the lower version of the dledger?

I did not find this problem in version 4.7.1。

mark

@iamqq23ue can u post some broker config and os config, our cluster use the same version and recently meet some switch case too. I want to reproduce it.

You do not need special configuration.
The trigger condition is to accumulate enough messages to cache all your memory
You just need to keep producing news, but not consuming，and you can reproduce the problem.
------------------ 原始邮件 ------------------
发件人:                                                                                "apache/rocketmq"                                                                                @.>;
发送时间: 2021年4月2日(星期五) 凌晨0:20
@.>;
<EMAIL_ADDRESS>主题: Re: [apache/rocketmq] RocketMQ4.8.0 dledger cluster will switch master to slave when the message accumulation is close to 30 million (#2582)
@iamqq23ue can u post some broker config and os config, our cluster use the same version and recently meet some switch case too. I want to reproduce it.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or unsubscribe.

I can't reproduce your case. IMO the config is important.

brokerClusterName = RaftCluster
brokerName=RaftNode00
flushDiskType=SYNC_FLUSH
brokerIP1=XXX
listenPort=XXX
namesrvAddr=XXX
storePathRootDir=/rtmqdata/rocketmq/480
enableDLegerCommitLog=true
waitTimeMillsInSendQueue=2900
dLegerGroup=RaftNode00
dLegerPeers=XXX
must be unique
dLegerSelfId=n1
sendMessageThreadPoolNums=16
Just a normal three-node cluster。One of the nodes is configured as above。
------------------ 原始邮件 ------------------
发件人:                                                                                "apache/rocketmq"                                                                                @.>;
发送时间: 2021年4月7日(星期三) 中午1:17
@.>;
<EMAIL_ADDRESS>主题: Re: [apache/rocketmq] RocketMQ4.8.0 dledger cluster will switch master to slave when the message accumulation is close to 30 million (#2582)
I can't reproduce your case. IMO the config is important.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or unsubscribe.

@RongtongJin
try this
sudo sysctl -w vm.min_free_kbytes=

I can't reproduce your case. IMO the config is important.

想起来了，你们内存是多大。我估计是堆积的消息足够多，将大部分内存cached之后会触发。我用的32G内存，可用20左右，所以大概是3000万消息堆积切换。

I can't reproduce your case. IMO the config is important.

想起来了，你们内存是多大。我估计是堆积的消息足够多，将大部分内存cached之后会触发。我用的32G内存，可用20左右，所以大概是3000万消息堆积切换。

这个要调，我64G机器，调到8G,之后sar -B 命令中的scanD基本消失

I can't reproduce your case. IMO the config is important.

想起来了，你们内存是多大。我估计是堆积的消息足够多，将大部分内存cached之后会触发。我用的32G内存，可用20左右，所以大概是3000万消息堆积切换。

128G

I can't reproduce either, my virtual machine is 8g memory, and master don't change even if accumulation is 70,00 0,000 msgs


⚠ Fortnite has degraded performance

In 3dce546, Fortnite (https://fortnite.com) experienced degraded performance:

HTTP code: 200
Response time: 1422 ms

Resolved: Fortnite performance has improved in 1c871b1.


Add explicit dependency on Numpy

Hi,
This PR adds explicit installing of Numpy using conda to prevent pytest from failing.
Thanks,
Nazanin

Actually, the story seems to be more complicated when considering Windows. See https://github.com/PolusAI/workflow-inference-compiler/pull/33/files#diff-6ad3080e3a5d9006fcf8e18df47a4fc8a71d5575a9d5cf55a6776843d0f6d5cdR24 That includes this fix and also the fix for windows, so I recommend closing this PR in favor of #33.

This works for Linux and Mac system but creates problems for Windows and @jfennick added the fix in another PR.


suggestion: on  for server: event

an event to fire on a specific timestamp, possibly limited to minutes, like the world time is.
looping tasks are great and all and would allow you to do most that this event could, but some things have to be really precise, and if your server slows down or shuts down unexpectedly this might affect the durations you're working with in your script.
You could log the current server time and work with that, but it'd get messy. A single event doing this would make scripting a lot easier.
for example a fake growing tree, that grows at the rate of one block per half an hour. rather than having a looping script which might slow down if the server does,  or may skip a portion of the loop on restart, the event could make its growrate very accurate.
another example is for example having a premium rank (assuming you have a reason not to use flags), which counts down the remaining days of premiumship daily, but has to be really accurate, but your server experiences unexpected downtimes or restarts daily too, but due to inaccuracies, every couple of days it's another hour late.
anyway an event like this would be nice:
on time for server:
on 23:00 for server:
additionally, the player could use "- determine cancelled" to stop time for humanity entirely, freezing space and time as we know it.

ehehe http://mcmonkey.org/paste/20618

cool

is this in already?

Dev builds? Yes. Release? No.


Fix LGTM alerts and flake8 warnings

I only fixed flake8 warnings that can be easily fixed with only whitespace changes.
I also took the opportunity to update the example extract config file for the changes made in #19.

This pull request fixes 2 alerts when merging 3f5c17c0d38ef738667b64daa439c3960fdc6e59 into 2ebd13c127649c73eac59dbf3824cb1849b5e77a - view on LGTM.com
fixed alerts:

1 for Unused local variable
1 for Unused import

Comment posted by LGTM.com

No problem.  I was going to wait for @KyleEvers' review anyway.

I tested these changes and it works fine. 💯


Add command to generate an image

Use a meme generator service to create an actual meme image and embed it.

https://imgflip.com/api


Updated the version & Fixed the enum serialization issue

Reference: https://github.com/Azure/pipelines/issues/41

@kaverma - Can you or someone from your team please review and approve these changes? Looking for some quick help

@ds-ms - Tagging you here as suggested by @kaverma in slack DM, can you pleas review this PR?

@ds-ms - Gentle reminder! Can you please review this PR?
cc: @satyaye

@ghostdevhv could you rebase your branch, that will run the tests again


mobx-react for Inferno

I tried Inferno.js (a React clone) and it's compatible with mobx. As there is no 'mobx-inferno' package, I did a proof of concept to migrate 'mobx-react' to make it compatible with Inferno. It's working very well and there are not a lot of modifications to make it compatible with Inferno.
.
Do you think that you could create a 'mobx-inferno' offical package ?
Thank

This is not needed, because with the 'inferno-compat' module, mobx-react is compatible with Inferno
Thanks


Fix the definition of sigevent on FreeBSD and Linux

It was originally defined back before rust could represent C unions.  So instead of defining the union field correctly, it simply defined that union's most useful field.  Define it correctly now.
Remove traits that can't be safely implemented on a union: PartialEq, Eq, and Hash.  Define Debug, but exclude the union field.  Leave Clone in place.
This PR is a rebase of #2813 that eschews all of the backwards-compatibility parts.

Failed on musl: https://github.com/rust-lang/libc/actions/runs/8846424497/job/24292411184?pr=3630

The Sparc failure is not due to this PR.

Considering the main branch is for version 1.0, which allows breaking changes, I think we can move this forward.

:umbrella: The latest upstream changes (presumably #3962) made this pull request unmergeable. Please resolve the merge conflicts.

@asomers mind rebasing this when you get the chance? We can get this into main.

Rebased, @tgross35

That job seems to fail a lot, I wrote up https://github.com/rust-lang/libc/issues/4112.
Thanks for the changes, I'll take a look today.

I went through line by line, everything looks correct here but I left a handful of consistency comments.

:umbrella: The latest upstream changes (presumably #3978) made this pull request unmergeable. Please resolve the merge conflicts.

I applied your suggestions, @tgross35 , and rebased.  But I did not squash the final commit.

Does #3630 (comment) work? If not, a FIXME(ctest) like the other expressions would be good.
I'll merge tomorrow either way, please squash when you get the chance.
@rustbot label stable-declined (breakage)

Whoops.  I missed that comment.  I've fixed it now.

Thanks!


Admin Deletion of Other Messages not Working

Description:
I saw a discussion saying that admins delete messages of other users. To test this, I opened a whatsapp chat I am an admin of in nchat and attempted to delete another person's message. While this normally works in Whatsapp, it doesn't work in nchat.
The popup to delete the message also doesn't ask if I want to delete for myself or for everyone, albeit I expected it to do so. Maybe nchat doesn't know that I'm an admin?
Also, I'm not sure if it's supposed to, but deleting the message only deletes it on nchat, but I can still view that message in the Whatsapp app.
How to reproduce it:
Open chat > ctrl-d to delete message > press RETURN for popup asking if you want to delete message
Environment:

Version: 3.67
OS / distro: MacOS 14.1.1

Hi @arcxne - whatsapp support for group admin deletion of messages sent by others was added in #148 / 02f91fc / v3.97. Your version (v3.67) does not have the fix.
If you are sticking to stable releases of nchat, the next one is planned for end Q4, so then you can get the functionality. Alternatively you can switch to using latest git master. You'll get fixes and features faster, but it may at times be unstable (I try to minimize this though).
I will proceed to close this issue, as it's already been fixed, but feel free to post any follow-up questions here, or re-open this issue if it still doesn't work after upgrading to >= v3.97. Thanks!


Numpy warning on adding point layer

🐛 Bug
Although I've not checked with other layer types yet, numpy warns every time a point layer is created.
To Reproduce
import napari
viewer = napari.view_points([1,2])

This warning is printed out
FutureWarning: elementwise comparison failed; returning scalar instead, but in the future will perform elementwise comparison
  return bool(asarray(a1 == a2).all())

Expected behavior

Environment

Please copy and paste the information at napari info option in help menubar here:

napari: 0.4.15rc0
Platform: Windows-10-10.0.22000-SP0
Python: 3.9.7 (default, Sep 16 2021, 16:59:28) [MSC v.1916 64 bit (AMD64)]
Qt: 5.15.2
PyQt5: 5.15.6
NumPy: 1.21.5
SciPy: 1.7.3
Dask: 2021.11.1
VisPy: 0.9.6
OpenGL:

GL version: 4.6.0 - Build <IP_ADDRESS>21
MAX_TEXTURE_SIZE: 16384

Screens:

screen 1: resolution 1368x912, scale 2.0

Plugins:

animation: 0.0.2
console: 0.0.4
napari-multitask: 0.0.2
napari-roi: 0.1.0
scikit-image: 0.4.15rc0
svg: 0.1.5

Any other relevant information:

numpy: 1.21.5

Additional context

do you still see this after https://github.com/napari/napari/pull/4256?

I just went back and was able to reproduce this error in main just before #4256, but not after... I'm going to close this since I think it was resolved there (just missed this issue).  But feel free to re-open if you find otherwise

Thanks, I looked for an issue with FutureWarning. I found this and overlooked #4526
Will give it a try.

just confirming that it is fixed


SECURITY: Windows Installer is not signed

Please apply an authenticode signature to https://github.com/github/git-lfs/releases/download/v1.1.1/git-lfs-windows-1.1.1.exe to avoid problems with SmartScreen/AV and the risk of compromise.

The team is in the process of obtaining new certificates - see the v1.1.1 release notes for more info.

@blackzackm +1

⬇

This was fixed in the v1.1.2 release. Please report back with details if you're still having problems.


add clouds background

add a animated clouds background (with perspective effects)

perspective is posing difficult without js, so I'm just going to call this done for now and might come back around to it later


updating repo with boilerplate

Ported README to .md and updated language
Added CONTRIBUTORS and CONTRIBUTING .mds

Coverage remained the same at 99.756% when pulling 63984c301a8ea5104fff7037b44a1015f2507fdc on markp-repo-boilerplate-update into 55fffb56e48c7fdd17b93671918972663bcea3da on master.


BQExtensionVSCode: Update Cache doesn't show up in vscode

Maybe BQExtensionVSCode is not activated.
Try renaming your file to xxx.bigquery or xxx.bq.
If you like other file extension (e.g. xxx.bqsql), see advanced settins in README.md.


Import server doesn't set public_ipv4_count

Thanks so much for this provider!! I've been waiting for someone who can actually code this to make it happen, and was almost ready to give up and use another VPS provider.
Trying it out with an existing server resource via import, and it tries to update the public_ipv4_count which errors the API.
resource "binarylane_server" "uptime" {
  name              = "uptime"
  region            = "bne"
  image             = "ubuntu-22.04"
  size              = "std-min"
  public_ipv4_count = 1
}

Run the import terraform import binarylane_server.uptime uptime
Plan shows
  # binarylane_server.uptime will be updated in-place
  ~ resource "binarylane_server" "uptime" {
        id                        = 355186
        name                      = "uptime"
      ~ public_ipv4_addresses     = [
            "XX.XX.XX.XX",
          + null,
        ]
      + public_ipv4_count         = 1
        # (8 unchanged attributes hidden)
    }

Attempting to apply this gives:
│ Received 400 Bad Request resizing server: server_id=355186. Details: {"type":"https://tools.ietf.org/html/rfc7231#section-6.5.1","title":"One or more validation errors
│ occurred","status":400,"errors":{"":["This would result in no effective size change."]},"message":"This would result in no effective size change."}

terraform state show binarylane_server.uptime doesn't show the public_ipv4_count in the state.
# binarylane_server.uptime:
resource "binarylane_server" "uptime" {
    backups                   = false
    id                        = 355186
    image                     = "ubuntu-22.04"
    name                      = "uptime"
    password_change_supported = true
    permalink                 = "XX"
    port_blocking             = true
    private_ipv4_addresses    = [
        "172.21.2.XX",
    ]
    public_ipv4_addresses     = [
        "XX.XX.XX.XX",
    ]
    region                    = "bne"
    size                      = "std-min"
}

Hey @timwsuqld, thanks for the bug report.
I found the issue and it should be fixed in v0.8.1 of the provider, which will be released soon.


⚠ Bofrost.de has degraded performance

In bd5e5cd, Bofrost.de (https://www.bofrost.de) experienced degraded performance:

HTTP code: 200
Response time: 1982 ms

Resolved: Bofrost.de performance has improved in b6c4e2c after 6 minutes.


python312Packages.fastcore: 1.7.20 -> 1.7.22

Diff: https://github.com/fastai/fastcore/compare/refs/tags/1.7.20...1.7.22
Changelog: https://github.com/fastai/fastcore/blob/1.7.22/CHANGELOG.md

Things done

Built on platform(s)

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

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

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

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

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

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[ ] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

nixpkgs-review result
Generated using nixpkgs-review.
Command: nixpkgs-review pr 360397

x86_64-linux

:white_check_mark: 26 packages built:

ghdorker
ghdorker.dist
python311Packages.execnb
python311Packages.execnb.dist
python311Packages.fastai
python311Packages.fastai.dist
python311Packages.fastcore
python311Packages.fastcore.dist
python311Packages.fastdownload
python311Packages.fastdownload.dist
python311Packages.ghapi
python311Packages.ghapi.dist
python311Packages.nbdev
python311Packages.nbdev.dist
python312Packages.execnb
python312Packages.execnb.dist
python312Packages.fastai
python312Packages.fastai.dist
python312Packages.fastcore
python312Packages.fastcore.dist
python312Packages.fastdownload
python312Packages.fastdownload.dist
python312Packages.ghapi
python312Packages.ghapi.dist
python312Packages.nbdev
python312Packages.nbdev.dist


Mosaic?

Hello,
Found your project while looking for a way to get mosaic view from few of the mjpeg streams. Tried with latest windows version but it fails to start with error message:
ERROR constatus  Source-type "mjpeg" is not known
It seems latest Windows version is 4.2, while latest source version is 4.5. Maybe this is the issue?
My output would be a multicast IP group and I hope all streams would round robin change periodically.
Can input also be multicast MPEG-TS udp stream?
Thank you.

Found your project while looking for a way to get mosaic view from few of
the mjpeg streams. Tried with latest windows version but it fails to start
with error message:
ERROR constatus Source-type "mjpeg" is not known

Ah then it has been compiled etc without ffmpeg. You can also try
"broken-mjpeg" which is sometimes more forgiving for broken streams.

It seems latest Windows version is 4.2, while latest source version is
4.5. Maybe this is the issue?
My output would be a multicast IP group and I hope all streams would round
robin change periodically.
Can input also be multicast MPEG-TS udp stream?

The round-robin is no problem. mpeg-ts udp might also be possible via the
gstreamer-interface that has been built in.
Unfortunately I have no way of building a windows version.


Logging

Change implementation of logging: use nlog instead of log4net

done.

Current username is null

Added current user - field to the log table. Added logging for add/edit/delete operations of employees.


Fixing Issue #89: 1D-SAX default 'sigma_l'

See Issue 89: https://github.com/rtavenar/tslearn/issues/89

Hi @StevenElsworth ,
Thanks for this fix. Could you also update the docstring so that it matches the new behaviour?
Thanks,
Romain

Hello @StevenElsworth! Thanks for updating this PR. We checked the lines you've touched for PEP 8 issues, and found:

In the file tslearn/piecewise.py:

Line 448:80: E501 line too long (97 > 79 characters)

Updated docstring, unsure what to do about PEP 8 issue as many lines seem too long.

Great! Thanks for your effort that makes tslearn better.
Romain


[Model][LoRA]LoRA support added for MiniCPMV2.6

ping @DarkLight1337
cc @HwwwwwwwH   I replaced 2.6's vision encoder, could you  please help check if there are any issues? Although I've already tested it locally

I tested the output on the example script and found slightly different results. But that may be because of the TP'ed attention module.

@DarkLight1337  You're very kind, and I truly appreciate your hard work. Thank you so much.

After this submission, I observed some differences. On my finetuned model(modules_to_save = ['embed_tokens','resampler']), there are differences in the output vision embedding.
This is my print debugging code.
            vision_hidden_states = self.get_vision_hidden_states(image_inputs)
            print(f"shape of vision_hidden_states: {vision_hidden_states.shape}")
            print(f"preview of vision_hidden_states: {vision_hidden_states[0, 0, :5]}")

output before this PR:
shape of vision_hidden_states: torch.Size([9, 64, 3584])
preview of vision_hidden_states: tensor([-2.3418,  2.3047, -3.0117,  0.0443,  1.4688], device='cuda:0',
       dtype=torch.float16)

after:
shape of vision_hidden_states: torch.Size([9, 64, 3584])
preview of vision_hidden_states: tensor([-2.2266,  2.2031, -3.0723,  0.1958,  1.4131], device='cuda:0',
       dtype=torch.float16)

Also observed that the inference performance was relatively improved after this commit. Can you help me to check those issues? @jeejeelee

This PR modified the implementation of the visual encoder, which could be the reason. Can you provide the code to reproduce this issue?

This PR modified the implementation of the visual encoder, which could be the reason. Can you provide the code to reproduce this issue?
@jeejeelee
Just use the officially provided code and model (through finetuned for more differences)

env:
PyTorch version: 2.4.0+cu121
Is debug build: False
CUDA used to build PyTorch: 12.1
ROCM used to build PyTorch: N/A

OS: CentOS Linux release 7.9.2009 (Core) (x86_64)
GCC version: (GCC) 4.8.5 20150623 (Red Hat 4.8.5-44)
Clang version: Could not collect
CMake version: version 3.30.1
Libc version: glibc-2.17

Python version: 3.11.9 (main, Apr 19 2024, 16:48:06) [GCC 11.2.0] (64-bit runtime)
Python platform: Linux-3.10.0-1160.105.1.el7.x86_64-x86_64-with-glibc2.17
Is CUDA available: True
CUDA runtime version: 12.0.140
CUDA_MODULE_LOADING set to: LAZY
GPU models and configuration: GPU 0: NVIDIA A100-SXM4-40GB
Nvidia driver version: 545.23.08
cuDNN version: Probably one of the following:
/usr/local/cuda-12.0/targets/x86_64-linux/lib/libcudnn.so.8.9.1
/usr/local/cuda-12.0/targets/x86_64-linux/lib/libcudnn_adv_infer.so.8.9.1
/usr/local/cuda-12.0/targets/x86_64-linux/lib/libcudnn_adv_train.so.8.9.1
/usr/local/cuda-12.0/targets/x86_64-linux/lib/libcudnn_cnn_infer.so.8.9.1
/usr/local/cuda-12.0/targets/x86_64-linux/lib/libcudnn_cnn_train.so.8.9.1
/usr/local/cuda-12.0/targets/x86_64-linux/lib/libcudnn_ops_infer.so.8.9.1
/usr/local/cuda-12.0/targets/x86_64-linux/lib/libcudnn_ops_train.so.8.9.1
HIP runtime version: N/A
MIOpen runtime version: N/A
Is XNNPACK available: True

CPU:
Architecture:          x86_64
CPU op-mode(s):        32-bit, 64-bit
Byte Order:            Little Endian
CPU(s):                12
On-line CPU(s) list:   0-11
Thread(s) per core:    2
Core(s) per socket:    6
Socket(s):             1
NUMA node(s):          1
Vendor ID:             GenuineIntel
CPU family:            6
Model:                 85
Model name:            Intel(R) Xeon(R) Platinum 8269CY CPU @ 2.50GHz
Stepping:              7
CPU MHz:               2499.976
BogoMIPS:              4999.95
Hypervisor vendor:     KVM
Virtualization type:   full
L1d cache:             32K
L1i cache:             32K
L2 cache:              1024K
L3 cache:              36608K
NUMA node0 CPU(s):     0-11
Flags:                 fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss ht syscall nx pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc eagerfpu pni pclmulqdq monitor ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch invpcid_single rsb_ctxsw fsgsbase tsc_adjust bmi1 hle avx2 smep bmi2 erms invpcid rtm mpx avx512f avx512dq rdseed adx smap avx512cd avx512bw avx512vl xsaveopt xsavec xgetbv1 arat avx512_vnni

Versions of relevant libraries:
[pip3] numpy==1.26.4
[pip3] nvidia-cublas-cu12==<IP_ADDRESS>
[pip3] nvidia-cuda-cupti-cu12==12.1.105
[pip3] nvidia-cuda-nvrtc-cu12==12.1.105
[pip3] nvidia-cuda-runtime-cu12==12.1.105
[pip3] nvidia-cudnn-cu12==<IP_ADDRESS>
[pip3] nvidia-cufft-cu12==<IP_ADDRESS>
[pip3] nvidia-curand-cu12==<IP_ADDRESS>
[pip3] nvidia-cusolver-cu12==<IP_ADDRESS>
[pip3] nvidia-cusparse-cu12==<IP_ADDRESS>
[pip3] nvidia-ml-py==12.555.43
[pip3] nvidia-nccl-cu12==2.20.5
[pip3] nvidia-nvjitlink-cu12==12.5.82
[pip3] nvidia-nvtx-cu12==12.1.105
[pip3] optree==0.12.1
[pip3] pyzmq==26.0.3
[pip3] torch==2.4.0
[pip3] torchvision==0.19.0
[pip3] transformers==4.45.2
[pip3] triton==3.0.0
[conda] numpy                     1.26.4                   pypi_0    pypi
[conda] nvidia-cublas-cu12        <IP_ADDRESS>                 pypi_0    pypi
[conda] nvidia-cuda-cupti-cu12    12.1.105                 pypi_0    pypi
[conda] nvidia-cuda-nvrtc-cu12    12.1.105                 pypi_0    pypi
[conda] nvidia-cuda-runtime-cu12  12.1.105                 pypi_0    pypi
[conda] nvidia-cudnn-cu12         <IP_ADDRESS>                 pypi_0    pypi
[conda] nvidia-cufft-cu12         <IP_ADDRESS>                pypi_0    pypi
[conda] nvidia-curand-cu12        <IP_ADDRESS>               pypi_0    pypi
[conda] nvidia-cusolver-cu12      <IP_ADDRESS>               pypi_0    pypi
[conda] nvidia-cusparse-cu12      <IP_ADDRESS>               pypi_0    pypi
[conda] nvidia-ml-py              12.555.43                pypi_0    pypi
[conda] nvidia-nccl-cu12          2.20.5                   pypi_0    pypi
[conda] nvidia-nvjitlink-cu12     12.5.82                  pypi_0    pypi
[conda] nvidia-nvtx-cu12          12.1.105                 pypi_0    pypi
[conda] optree                    0.12.1                   pypi_0    pypi
[conda] pyzmq                     26.0.3                   pypi_0    pypi
[conda] torch                     2.4.0                    pypi_0    pypi
[conda] torchvision               0.19.0                   pypi_0    pypi
[conda] transformers              4.45.2                   pypi_0    pypi
[conda] triton                    3.0.0                    pypi_0    pypi
ROCM Version: Could not collect
Neuron SDK Version: N/A
vLLM Version: 0.6.4.dev19+gcf1d62a6.d20241016
vLLM Build Flags:
CUDA Archs: Not Set; ROCm: Disabled; Neuron: Disabled
GPU Topology:
GPU0    CPU Affinity    NUMA Affinity   GPU NUMA ID
GPU0     X      0-11    0               N/A

Legend:

  X    = Self
  SYS  = Connection traversing PCIe as well as the SMP interconnect between NUMA nodes (e.g., QPI/UPI)
  NODE = Connection traversing PCIe as well as the interconnect between PCIe Host Bridges within a NUMA node
  PHB  = Connection traversing PCIe as well as a PCIe Host Bridge (typically the CPU)
  PXB  = Connection traversing multiple PCIe bridges (without traversing the PCIe Host Bridge)
  PIX  = Connection traversing at most a single PCIe bridge
  NV#  = Connection traversing a bonded set of # NVLinks

from transformers import AutoTokenizer

from vllm import LLM, SamplingParams
from PIL import Image
import requests

model_id = "openbmb/MiniCPM-V-2_6"
image_url = "https://qianwen-res.oss-cn-beijing.aliyuncs.com/Qwen-VL/assets/demo.jpeg"
image = Image.open(requests.get(image_url, stream=True).raw).convert("RGB")

question = "描述这张图片。"
tokenizer = AutoTokenizer.from_pretrained(model_id, trust_remote_code=True)
llm = LLM(
    model=model_id,
    trust_remote_code=True,
    max_model_len=2048,
    gpu_memory_utilization=0.9,
    max_num_seqs=5,
    dtype="auto",
)

messages = [{"role": "user", "content": f"(<image>./</image>)\n{question}"}]
prompt = tokenizer.apply_chat_template(
    messages, tokenize=False, add_generation_prompt=True
)
stop_tokens = ["<|im_end|>", "<|endoftext|>"]
stop_token_ids = [tokenizer.convert_tokens_to_ids(i) for i in stop_tokens]
sampling_params = SamplingParams(
    stop_token_ids=stop_token_ids,
    max_tokens=100,
    temperature=0,
    best_of=1,
)

llm_inputs = {"prompt": prompt, "multi_modal_data": {"image": image}}

outputs = llm.generate(
    [llm_inputs],
    sampling_params=sampling_params,
)
print(outputs[0].outputs[0].text)

output before this PR:
shape of vision_hidden_states: torch.Size([9, 64, 3584])
preview of vision_hidden_states: tensor([-1.7344,  0.7695, -1.9062, -0.5352,  0.5664], device='cuda:0',
       dtype=torch.bfloat16)

after:
shape of vision_hidden_states: torch.Size([9, 64, 3584])
preview of vision_hidden_states: tensor([-1.7031,  0.7578, -1.9453, -0.5117,  0.5469], device='cuda:0',
       dtype=torch.bfloat16)

That's still quite a difference, right?

@whyiug   As for this output of yours, I think this is an acceptable difference.
BTW, We tested this modified minicpmv26 locally using script similar to test_minicpmv, and the test passed correctly.

I used the minicpmv model for the classification task and this difference between  [-1.7344,  0.7695, -1.9062, -0.5352,  0.5664] and [-1.7031,  0.7578, -1.9453, -0.5117,  0.5469] just led to exactly the opposite result:(
Thanks for the reply, I'll check the test script later.

@jeejeelee BTW, can you explain in a little more detail why this PR( i mean the implementation of the visual encoder) get a big performance increase. Thanks.

@whyiug  I haven't specifically tested the performance improvement of the visual encoder, but I think  the QKVParallelLinear (fused kernel )and the attention using xformer (optimized attention implementation)are the reasons.


Replace accumulation with blackhole.consume

Motivation:
SpotJMHBugs reports that accumulating a value as a way of eliding dead code
elimination may be inadvisable, as discussed in
JMHSample_34_SafeLooping::measureWrong_2. Change the test so that it consumes
the response with Blackhole::consume instead.
Modifications:

Replace addition of results with explicit blackhole.consume() call

Result:
Tests work as before, but with different benchmark numbers.

@netty-bot test this please

@franz1981 @njhill can you re-review :)

@netty-bot test this please


[LB-1373] fixed precision for time type for PostgreSQL

Environment
Liquibase Version: 4.3.5
Liquibase Integration & Version:
Liquibase Extension(s) & Version:
Database Vendor & Version: postgres 9-13
Operating System Type & Version: MacOS Big Sur 11.4
Pull Request Type
closes #1774
https://datical.atlassian.net/browse/LB-1373

[x] Bug fix (non-breaking change which fixes an issue.)

Execute the liquibase/liquibase-test-harness test for liquibase-test-harness/src/main/resources/liquibase/harness/change/changelogs/postgresql/datatypes.datetime.xml against:

Postgres 9
Postgres 9.5
Postgres 10
Postgres 11
Postgres 12
Postgres 13

Manual Tests
The manual tests need only be executed against one version of Postgres.
Verify update-sql correctly generates Postgres SQL to create columns of datatype TIMEZONE with varying precision.
liquibase update-sql --changelog-file lb1798-changelog.xml

Columns have the expected precision on the time datatype; ie time(3).
Columns have the expected TIMEZONE setting; ie WITHOUT TIME ZONE

Verify a successful update of a Postgres database to create a table with TIMEZONE and precision datatype columns.
liquibase update --changelog-file lb1798-changelog.xml

There are no errors during update.
The table is created on the database.

Columns have the expected precision on the time datatype; ie time(3).
Columns have the expected TIMEZONE setting; ie WITHOUT TIME ZONE

Verify generate-changelog includes a createTable changeset with TIMEZONE datatype columns.
liquibase generate-changelog --changelog-file gcl-1798-changelog.xml

Columns have the expected precision on the time datatype; ie time(3).
Columns have the expected TIMEZONE setting; ie WITHOUT TIME ZONE

Automated Tests

No new functional automated tests are required for this ticket.
Test harness test already created.
Dev also added a unit test.

Fast Track PR Acceptance Checklist:

[x] Build is successful and all new and existing tests pass
[x] Added [Unit Test(s)]
[x] Added [Test Harness Test(s)] - Added previously by Robert, test-harness helped to find this bug.

┆Issue is synchronized with this Jira Bug by Unito

Thanks @KushnirykOleh for creating the fix.

I fixed up the time precision handling

This PR addresses issues related to snapshotting precision for Postgres time and time with timezone datatypes.

Execute the liquibase/liquibase-test-harness test for liquibase-test-harness/datatypes.datetime.xml against:

Postgres 9 PASS
Postgres 9.5  PASS
Postgres 10 PASS
Postgres 11 PASS
Postgres 12 PASS
Postgres 13 PASS
Postgres 14 PASS

Verify update-sql correctly generates Postgres SQL to create columns of datatype TIMEZONE with varying precision. PASS
liquibase update-sql --changelog-file lb1798-changelog.xml

Columns have the expected precision on the time datatype; ie time(3).     PASS
liquibase update --changelog-file lb1798-changelog.xml

There are no errors during update. PASS
The table is created on the database. PASS

Columns have the expected precision on the time datatype; ie time(3). PASS
Columns have the expected TIMEZONE setting; ie WITHOUT TIME ZONE PASS

Verify generate-changelog includes a createTable changeset with TIMEZONE datatype columns. PASS
liquibase generate-changelog --changelog-file gcl-1798-changelog.xml

Columns have the expected precision on the time datatype; ie time(3).


[#28] Windows compatibility

Windows compatibility changes also needed in the template

Oh, thanks. Right.

I also submitted a PR to isparta for it's readme... this appears in a lot of package.json files!

Yeah, we did not initially support windows scripts. Not intentionally. But since no one develops on windows it was not easy to see if it is working. Now I do development at home mostly on windows for the sake of having that experience and ability to test scripts and libs.

"no one develops", except for me it appears.  I had this trouble here a few weeks ago then today in another tool.  I could spend all night submitting PRs for "babel-node node_modules/.bin/isparta".

Don't be offended =), there are some other people doing webdev on win... I've been win-user for years till the last year and now switched to mac (way more comfortable and painless for work and more pleasant visually/UX then linux for me).
Keep doing PR's that is very helpful. As I found that is not really difficult to support both win and osx/linux at the same time. Almost everything is compatible.
Thanks.

:+1:


Modify Spherical Aberration to work via per-sample exposure instead

As discussed on Discord recently.
For the curve itself, I looked at https://jtra.cz/stuff/essays/bokeh/index.html and figured out something that both looks relatively accurate to the plotted graph and results in (imho) pleasing results. Just lerping between radius^4 and 1.0.
https://www.desmos.com/calculator/9oogkblrwx
Something that could be useful is being able to adjust the exponent to produce a harsher or softer ring but I'll leave that up to your preferences.

Three images, first is made with the current released code and default boost values, second with your PR code with 0.9 boost (the default) and the third is a downtuned boost with PR code

Your PR works well, with one exception perhaps and that's sharp edges on the shape, as you already commented. I like these a lot (especially also with the fringing due to the current state of the code!) however that's not really doable with what the PR code does.
This would require an adjustment to the function I recon?

Another thing I noticed, the center isn't boosted (this is a bug I think that's also present in the release code)

I think changing the formula's '4' value into something like 32 will give very thin edges. Alternatively, if say a factor dictates n rings on the outside are always boosted and the rest, inner rings, are using the spherical aberration formula, this would give the previous results I think? (except the fringing, but let's ignore that for now), but I'm not sure if that messes the overall normalization of the bokeh (I think it does)

Spherical aberration is purely radius based, not doing these outlines that you see on polygonal DOF. That's a different effect, however I don't know which one (yet).
That should be easy to implement though, as my proposed solution allows arbitrary weighting (could even be done in RGB) for each sample. I think both effects should be stacked rather than "inner rings do this, outer rings do that".
Let me research a bit, I'll update the proposed solution.

The bicubic catmullrom function isn't used in the shader, so I've removed it. Added a tooltip remark for the fringe so high values could lead to a screen going dark during the first phase of rendering


Add missing angle bracket

Indeed, I accidentally saw this mistake on a big repo. Searching a bit on github, I realized it was quite common. So I decided to fix it on a few large repos.
Btw I agree with you that these e-mails are sensitive data. Although they're already in the Git history and the maintainers wrote them themselves. It's also possible that these emails are simply not currently being used by the authors. That's a question worth exploring.
eslint-plugin-package-json is a good catch, I'm going to dig it up and add a rule regarding the format of contributors' names/emails.


Array literals don't match correctly

For some reason the rule doesn't seem to be working the way I expect it to since it will match a single entry in the array but not multiple ones.
Grammar rule:
// rule should match 1 or more comma separated expressions
// (i.e. literals, function calls, etc.)
array_literal: $ => seq('(', '/', commaSep1($._expression), '/', ')'),

Test source code:
y = (/ INT(1) /)  ! matches
l(1:3) = (/1, INT(r/i), i/)  ! doesn't match

I wonder if a prec.right will fix this.


[Chore]: Publish +dev or +rc images as part of the Concourse "main" pipeline

Background
We used to build and push images to DockerHub based off of main with every commit, but that was removed as part of https://github.com/cloudfoundry/korifi/pull/1144. Some of the reasoning was that the latest tag should be pointing at an image for the latest released code and that devs can easily build images off of main themselves.
I agree with both of those points, but I still think there is value in having public dev or release candidate builds of our images available:

It simplifies the process of acceptance on remote environments. Previously when I would do acceptance I would look at our the Github action run for a particular commit and deploy the images we built for that run. This gave me confidence that I was testing the same code that passed CI and saved bandwidth and time on my side. Now I need to check out a particular commit, build the images, and push them to a remote registry (I typically do acceptance using Azure or GKE clusters).

I personally don't run KinD clusters all the time + others may not have workstations that can quickly build images.

When we eventually do fan-out testing across other IaaSes and K8s clusters it will be nice to know we are deploying the same images across all of them and reduce duplicate work.
It simplifies the community's ability to consume the latest features. With cf-for-k8s we found that some operators were willing to put "release candidate" quality images into their test environments to test out the latest features and bug fixes. This allowed us to get faster feedback for certain changes.

Action to take
Add a job to our "main" pipeline on Concourse that builds +dev or +rc images.

Impact
This will improve productivity for those doing acceptance duties and provide community members with an easier pathway to trying out the latest code.

Dev Notes

Slack discussion: https://cloudfoundry.slack.com/archives/C0297673ASK/p1654097263061389
We can use the semver-resource to have nice build numbers
I don't have a strong opinion regarding whether the builds are tagged with +dev-x or +rc-x. I think there may be some semantic differences between the two and +dev feels like it may carry fewer assumptions about the stability of the image, but these will be made in the portion of our pipeline that aligns with where "release candidates" would be built, so I feel both could apply.

Closing this out. Dev images are being built for each commit to main.