Can remix-forms function within a PWA / client side only context?

We want to use remix-forms in a backoffice admin because we have a remix/remix-forms based front end. The backend uses an Angular router based framework that allows us to use React as a way to build route pages, but uses Angular routing and therefore limits us severely from any kind of request magic. So, it's a bit of a bolt on. In order to be able to continue using the same approach across our packages, I would like to keep using remix-forms. Can it be used as a PWA? There are no examples for this. Do you have to have access to the request to create/process form actions?

Hey @mschipperheyn , this is a very specific question and would require some research.
But you can take advantage of the frontside of remix-forms if you make your backend comply the same contract as performFormAction. So you basically just need to return the same structure from back-end.

I cannot put any requirements on the backend. The backend is effectively a graphql api.
So, I would like to just send a request and process the return client side. From what you said I'm not 100% sure if I can use remix-forms purely client side, which I guess is my real question. Would I be able to customize the functionality in such a way that I can replace the component that interacts with the server through our own api and intercept the requests and responses so that it adheres to the contract with other components from remix-forms? Or would I just be better off with something like Formik or React Final Form?

Hey, @mschipperheyn!

You can use Remix Forms purely on the client side if you use React Router 6.4+ data APIs. With them, your actions will run on the client.

You can also have a Remix app as a Backend-For-Frontend that will communicate with your GraphQL backend from server to server. If that's a possibility, I think it's the best approach.

You can use only the Form side of Remix Forms and never use formAction. If you pass an action prop to the form that points to a server that knows how to receive application/x-www-form-urlencoded requests, you can go nuts. Just remember that you'll have to manually return errors in the same format as formAction returns if you want to render server-side error messages. I would not recommend this approach, but it is a possibility.

There is also a fourth possibility, which is what @gustavoguichard was referring to in his comment. In theory, you can use Remix Forms with any framework, as long as you:

Create the following components/hooks using the same interface as Remix/React Router: Form, useActionData, useSubmit, and useNavigation.
Create the following functions with the same interface as Remix/React Router: redirect, and json.

Remix Forms was not created to be used with other frameworks, though. This possibility is a side-effect of us making it work both with Remix and React Router in the same package. Leverage it at your risk :)

Actually, now that I read it again, I think @gustavoguichard was referring to #3 :)


[BE]: Deprecate Llama2

Deprecates Llama2 utilities and mentions in the documentation. Also deprecated sentencepiece since that's only used for llama2. Code could be simplified further but from a code quality perspective it might make sense to have one more large model variant in the repo.

Code could be simplified further but from a code quality perspective it might make sense to have one more large model variant in the repo.

Agreed. I think we'll have more model types, so keeping the flexible code structure could be helpful for future.


fix(@angular/cli): correctly handle --search option in ng doc

When the --search option is passed to ng doc, it should open a URL that does a search across the whole website (instead of the default behavior of limiting the search to API docs).
Fix the ng doc command to implement the iteded behavior (previously, it did the opposite).

@gkalpak, this doesn't apply cleanly on the patch branch. Hence I will change the target to rc.


Fix Spanner timeout configuration based on upstream changes

Previous update had an off-by-factor-of-ten error
Upstream change:
https://github.com/googleapis/googleapis/pull/438

Sorry, there was a mistake in the last configuration update. Could one of you create a release after this is merged?

No problem. I'll merge as soon as the build is green and release this afternoon.

Thanks, @blowmage.

This is included in 0.23.2 that was released this afternoon.


Hooks docs and typings

Each exported hook must have a README file and follow this template:
// hooks/useMyHookName.ts

export interface MyHookNameProps {}

export interface MyHookNameResult {}

export function useMyHookName(props: MyHookNameProps): MyHookNameResult {}

// index.ts

// ...
export * from './hooks/useMyHookName';
// ...

Сall me when we start

I suggest attaching PR in the comments, since there will be more than one of them before the issue closes
useOutsideClick

PR with next hooks:

useBodyScrollLock
useVirtualElementRef
usePortalContainer

PRs:

https://github.com/gravity-ui/uikit/pull/1038
https://github.com/gravity-ui/uikit/pull/1042
https://github.com/gravity-ui/uikit/pull/1049
https://github.com/gravity-ui/uikit/pull/1060
https://github.com/gravity-ui/uikit/pull/1084


[Lake] Create etl.py, bronze_step(), and post_pronze tables: <pdr_final_predictions_bronze_post>

Motivation
The role of data_factory.py is to perform a single-step procedure to get the data written to disk. However, this data may need to be manipulated further, such as joined with other data, and then aggregated.
To solve for this, etl.py will be responsible for taking all steps required to generate/compute data towards analytics/intelligence.

bronze_step()
silver_step()
gold_step()

To complete this task, we'll be using all the bronze_tables generated by gql_data_factory:

pdr_predictions
pdr_truevals
pdr_payouts

To create a post_table: pdr_final_predictions, which is indexed on [feed, source, timeframe]

pdr_final_predictions will join across all 3 tables above based on their slot (int), in order to calculate the final values.
When ETL.py runs for the 2nd time it should (1) update existing records that were modified (2) append new records to the end.

DoD:

[ ] data factories should be responsible for generating all bronze records .
[ ] ETL, similar to DataFactory can then create additional tables (bronze=>silver=>gold)
[ ] For now, ETL simply runs the bronze_step(). After all tables are up-to-date, a post-process runs and builds <bronze_post_pdr_final_predictions>

Alternatively, expand gql_data_factory, such that it can handle:

Post-fetch processing of bronze tables
Processing of silver tables (enrich, aggregate for time-series analysis)
Processing of gold tables (metrics, summaries, lookup tables)

    def __init__(self, ppss: PPSS):
        self.ppss = ppss

        # filter by feed contract address
        network = get_sapphire_postfix(ppss.web3_pp.network)
        contract_list = get_all_contract_ids_by_owner(
            owner_address=self.ppss.web3_pp.owner_addrs,
            network=network,
        )

        # TODO - make contract_list a constant, filtering happens after full sync
        # 1. configure all tables that will be recorded onto lake
        self.bronze_config = {
            "bronze_pdr_predictions": {
                "fetch_fn": get_pdr_predictions_df,
                "schema": predictions_schema,
                "config": {
                    "contract_list": contract_list,
                },
            },
            "bronze_pdr_truevals": {
                "fetch_fn": get_pdr_truevals_df,
                "schema": truevals_schema,
                "config": {
                    "contract_list": contract_list,
                },
            },
            "bronze_pdr_payouts": {
                "fetch_fn": get_pdr_payouts_df,
                "schema": payouts_schema,
                "config": {
                    "contract_list": contract_list,
                },
            },
            "bronze_pdr_subscriptions": {
                "fetch_fn": get_pdr_subscriptions_df,
                "schema": subscriptions_schema,
                "config": {
                    "contract_list": contract_list,
                },
            },
        }

        # 2. configure post_fetch tables that will be created from the raw data
        self.post_bronze_config = {
            "bronze_post_pdr_predictions": {
                "fetch_fn": get_post_predictions_df,
                "schema": bronze_post_predictions_schema,
                "config": {
                    "contract_list": contract_list,
                },
            }
        }

        # 3. configure silver tables that will be created as a result of aggregations
        self.silver_config = {
            "silver_pdr_predictions": {
                "fetch_fn": get_silver_predictions_df,
                "schema": silver_predictions_schema,
                "config": {
                    "contract_list": contract_list,
                },
            },
            "silver_pdr_feeds": {
                "fetch_fn": get_silver_feeds_df,
                "schema": silver_feeds_schema,
                "config": {
                    "contract_list": contract_list,
                },
            },
            "silver_pdr_predictoors": {
                "fetch_fn": get_silver_predictoors_df,
                "schema": silver_predictoors_schema,
                "config": {
                    "contract_list": contract_list,
                },
            },
        }

Use truevals, payouts, and prediction data samples to build out the core logic and tests. Use TDD to write/verify the logic for joining all the data effectively is working.
Example - Work #1 - Basic Event Flow
Events #1 (N1 Pdr, trueval, payout - complete)
Events #2 (N2 Pdr, trueval - incomplete)
Events #3 (N3 Pdr, trueval, payout - complete) + (N2 payout - complete)
Events #4 (N4 Pdr)
Events #5 (N5 Pdr)
Events #6 (N4 trueval) + (N5 trueval)
Events #7 (N6 Pdr) + (N4 payout)
With each set of steps/events, update bronze_post_predictions table correctly and as efficiently as possible. This means that rather than re-fetching from subgraph or re-computing all records, we're going to update our local records as needed and re-calculate just what's changed.
truevals
{
	predictTrueVals(first: 100) {
    id
    slot {
      id
      predictContract {
        id
        secondsPerEpoch
      }
      slot
    }
    trueValue
    block
  }
}

Predictions
{
	predictPredictions(first: 1000 , where: {user_starts_with_nocase: "0xe4C185d075ebeA51F698CAef9E0385295DaD487e"}) {
                    id
                    timestamp
                    user {
                        id
                    }
                    stake
                    payout {
                        payout
                        trueValue
                        predictedValue
                    }
                    slot {
                        slot
                      trueValues {
                        id
                        trueValue
                      }
                    }
                }
            }

Payouts
{
  predictPayouts(first: 1000 orderDirection: desc orderBy: timestamp) {
    id
    prediction {
      id
      user {
        id
      }
      stake
      slot {
        predictContract {
          token {
            id
          }
        }
        slot
      }
    }
    payout
    predictedValue
    trueValue
    aggregatedPredictedValue
    block
    timestamp
  }
}

I'm going to close this ticket, too broad. We've delivered the first implementation.


⚠ Bofrost.lu has degraded performance

In 28406a0, Bofrost.lu (https://www.bofrost.lu) experienced degraded performance:

HTTP code: 200
Response time: 1130 ms

Resolved: Bofrost.lu performance has improved in 7da97df.


Update install doc

This PR update install doc for 1.5

this for https://github.com/cython/cython/issues/1880


Official CDN is down

Hello! Thanks for this incredible icon lib!
I noticed the official CDN recommended in the Icons Set is not working:
https://code.iconify.design/iconify-icon/1.0.7/iconify-icon.min.js

I used the jsDeliver alternative recommended in the docs with success. But it would be nice to include it on the Icons Set as well.

Ah I see. It's working just fine now!
Thanks a lot for the quick response.


EX3: Create an FE model to check the rig deformation

This should be an FE model of a beam in 3pt bending including contact from the anvils. Start with just a beam without the anvils then add the anvils later.

Should we do this in MOOSE? - might be possible to hack something quickly from the moose solid mechanics tutorials:
https://mooseframework.inl.gov/modules/solid_mechanics/tutorials/introduction/index.html
Or the pyvale simcases:
https://github.com/Applied-Materials-Technology/pyvale/tree/main/simcases/case02

@mikesmic good excuse to learn some MOOSE!


Switch build to alpine and 3.7. Pre-build base image. Fixes #76

I pushed the base image here https://hub.docker.com/r/tlitsumichedu/student-dashboard-django-base/
I'll push it to the open shift repo then we should be all set with this. Looks good locally.

Okay this is all in openshift and seems ready to roll!

Ops wanted to talk to me about this one, I'll merge it this afternoon after that meeting.

Okay I'm closing this one again, third time will be a charm! ;)


Full Timezone support when parsing ical

This PR builds on the great work from #335 (thanks @dcosson)
I'll be removing the need for ActiveSupport here.
Also, added support for parsing RDATE while I'm in here.
Closes #335

@avit do you think we should move ical parsing out of ice_cube proper as part of this?  Then we could avoid having to wrap with active_support conditionals.

I like the idea... are you thinking of a separate gem, or maybe just an optional require?

I think the optional require makes sense, but separate gem also sounds like a decent idea to me.  I just dislike that we're potentially having two different behaviors in the ical parser dependending if AS is loaded or not

We have a dependency on ActiveSupport here. Maybe this can work with TimeUtil.deserialize_time by passing a hash to it.

@avit Ah I like that idea - will update this soon

Any update on this?
It's really a bummer that this has been roadblocked for years at this point, even though the current behavior which is completely broken w.r.t. daylight savings time, just to avoid the dependency on ActiveSupport. With all due respect, what's more important - having a library that works and solves people's problems, or keeping the dependencies down?

What do people think of the compromise of just making this method raise if ActiveSupport hasn't been required and we're attempting to parse a time with zone?  I'm not 100% against the idea of the added dependency anymore, but want to make sure we're doing it for a reason that is required.  I'm sorry this has held you up @dcosson and hopefully this branch has been useful to you.

No worries, thanks for your continuing work maintaining this library. Hopefully it's close now!
+1 from me on raising if ActiveSupport isn't available.

Seems like a good idea.


Issue after update:  [ARM Stable Update] 2021-02-26

When I open the terminal I get this error:
thread 'main' panicked at 'unknown shell: "/bin/bash". Supported shells: bash, ion, powershell', src/main.rs:69:25
note: run with RUST_BACKTRACE=1 environment variable to display a backtrace
During updates, the following error occurred: "The print function does not exist. Choose between rprint or lprint".
Thanks for help.

I think this refers to the ARM edition - this is about the x86 one that is completely independent from it.


Handling of configuration files

PHPUnit 10 brings both several changes to the configuration file and a misfeature of causing phpunit to exit with a non-zero status if the config file does not strictly validate.
So, for example, if you had been relying on convert{X}ToExceptions="true", you might want to set displayDetailsOnTestsThatTrigger{X}="true" and failOn{X}="true" for PHPUnit 10 to maintain that behavior going forward. But unless you also remove convert{X}ToExceptions="true", changing the behavior for runs with earlier versions of PHP, PHPUnit 10 will whine about not recognizing the old setting and will exit with a failure status even if all actual tests pass.
I don't know what the best way around this might be.
Simplest might be to provide a wrapper script that, if not passed -c or --configuration or --no-configuration, looks for various config file names and picks the best one for the current version of PHPUnit to set --configuration before execing phpunit. For example, it might check for any "phpunit.{VER}.xml.dist" and pick the one with the highest {VER} that's not greater than PHPUnit's own version.
A little fancier might be a wrapper that determines the configuration file in the same way PHPUnit would, copies it to a temporary file while stripping a predefined list of settings based on the PHPUnit version, and calls phpunit with --configuration pointing to the temporary file.
Unfortunately PHPUnit doesn't provide any way to hook into its own code to handle things more directly. There might still be ways, but they'd be fragile.

@anomiex PHPUnit offers a --migrate-configuration option since PHPUnit 9.3, which can be run before running PHPUnit for the test run, to convert a configuration file to a more recent format.
While definitely not perfect, as it doesn't handle the convert*ToExceptions settings, it is the recommended way to work with PHPUnit 9.x vs 10.x configuration files.
I think improving that --migrate-configuration option in PHPUnit should be explored first, before consideration should be given to adding any such functionality to the PHPUnit Polyfills.
I do feel your pain in this though, but there are more sticky issues around this as the PHPUnit 10.x failOn* options also do not translate to the same run results (exit code) in PHPUnit 9.x with convert*ToExceptions as in PHPUnit 9.x only PHP native errors/notices etc were taken into account for the exit code, while in PHPUnit 10.x, PHPUnit native ones are also taken into account, making any setup using the failOn* options brittle.
I think this needs further discussion in the PHPUnit repo first. If you do open an issue there, please add the link to this ticket as I'd very much would like to follow the discussion.
In the mean time, here are some links for interim solutions I've used in certain projects (take note of the info in the commit messages):

For this repo (which needs to support the config for both PHPUnit < 10, PHPUnit 10.0, as well as PHPUnit 10.1):

https://github.com/Yoast/PHPUnit-Polyfills/pull/111
https://github.com/Yoast/PHPUnit-Polyfills/pull/130/commits/2462abe4996522c1c604392dad5936488fafb8c3

In a repo which can rely on the latest PHPUnit being used of each PHPUnit major:

https://github.com/PHPCompatibility/PHPCompatibility/pull/1580/commits/df9cca7ac14e19da22f96b7c34a0583348c2c2a0

Thanks for pointing out that failOnDeprecation will also fail on PHPUnit's own deprecation messages, I had missed that.
Someone already filed https://github.com/sebastianbergmann/phpunit/issues/5199 about thee test runner exiting with a non-zero code on warnings even when failOnWarning is false, so it seems unlikely he'd do anything about not wanting it to exit with a non-zero code when  failOnWarning is true.
Also I'm having a hard time coming up with a reason for wanting to ignore PHPUnit's own deprecation warnings but not PHP deprecation warnings that's more compelling than "we'd have to wait on upgrading phpunit until yoast/phpunit-polyfills gets a polyfill", except for the "deprecation" about an older-schema config file.
I filed https://github.com/sebastianbergmann/phpunit/issues/5405 for one actual bug I've encountered in the migration.
I'm skeptical he'll consider failing to migrate convert*ToExceptions to failOn* a bug, but I filed https://github.com/sebastianbergmann/phpunit/issues/5406 anyway.

@anomiex Thanks for that. I've subscribed to both issues. I hadn't gotten around to do a proper write-up of the issues myself yet.

I'm having a hard time coming up with a reason for wanting to ignore PHPUnit's own deprecation warnings but not PHP deprecation warnings that's more compelling than "we'd have to wait on upgrading phpunit until yoast/phpunit-polyfills gets a polyfill"

Except that is not the real issue.
There have been multiple times in the past when PHPUnit would warn about something being deprecated without replacement, only for it to be reconsidered and a replacement being added after all at a later point in time.
This happened even as recently as PHPUnit 9.6 which warns about assertObjectHasAttribute() being deprecated without replacement. That deprecation got adjusted in PHPUnit 9.6.7 after the release of PHPUnit 10.1 which introduced the assertObjectHasProperty() method.
There are also warnings ("data providers have to be static") which don't necessarily affect the running f the test suite until a later point in time.
Along the same lines as the reasoning for PHP deprecations, you may want to ignore those until those can be addressed as a managed mini-project, but that doesn't necessarily mean that PHP and PHPUnit deprecations should be addressed in the same mini-project or at the same time.
They have a different time line and a different scope.
Additionally, PHPUnit has recently had a tendency to change the configuration file a lot and to add deprecations in minor/patch versions which come out fairly regularly, which is very different from PHP, where such deprecations are only added once a year in a minor.
What this means in practice is that, while for a new PHP version, you may add a CI build once a year with a continue-on-error for the time being until all deprecations have been fixed (managed), a new PHPUnit minor/patch version may now start failing builds at random (uncontrollable unless you fix the max PHPUnit version in Composer and let Dependabot manage the updates every week or so, which is a complete drag).
In other words, the current PHPUnit 10.x XML attributes to manage warnings/deprecations etc just do not allow for updating PHPUnit related issues in a controlled way without blocking automatic use of the latest PHPUnit version.
Does that clarify things a little more ?

which is very different from PHP, where such deprecations are only added once a year in a minor.

That's a good point, PHP does limit their deprecations to a new minor. And we (like probably everyone else) tend to treat minor PHP versions similarly to major versions of other stuff like PHPUnit.
Sounds like you should handle filing the PHPUnit bug about this one, you have a much better grasp on the issue. 😉

FYI: in case you missed it: as of PHPUnit 10.5.32 and 11.3.3 PHPUnit deprecation notices are now decoupled from PHP deprecation notices, which should make live a hell of a lot easier. (still doesn't sort out the config, but does sort out some of the other things discussed above)
Ref: https://github.com/sebastianbergmann/phpunit/issues/5937


scale_mat

Thank you very much for your work I have a question scale_mat can I reconstruct this if I only know the relative position of the object to be measured in the pool without knowing the size in advance

scale_mat depends on the initial colmap reconstruction using only RGB data and is generally chosen so the scene fits within the unit sphere. You might find this line from the NeuS repo that our code is based on helpful: https://github.com/Totoro97/NeuS/blob/main/preprocess_custom_data/colmap_preprocess/gen_cameras.py#L59

Thank you very much for your reply, but I still have a question, that is, I have parsing the PKL data of the sonar, and does the corresponding poes_sonar position matrix have my own definition, for example, the bottom left corner of a pool is the coordinate origin, and then the unit is meters?


Inner placement of axis ticks on X axis of rotated charts

Adding to #640: if a chart is rotated, its X-axis looks like an Y-axis, but it's not possible to put the tick labels inside the chart. axis.x.inner is not available, axis.y.inner only affects the Y axis (which looks like an X axis because the chart is rotated).

+1

+1 This would be very useful to keep the look consistent for charts that use inner ticks.

+1


Missing sourcePublisherIdentifier even though there is a sourceKBRIdentifier

Probably in issue with the generated query or the data integration.
There seems to be an underlying issues, all contributors from the correlation list are treated as persons and as orgs due to an error in the integration script, see https://github.com/kbrbe/beltrans-data-integration/issues/273.
The corpus versions from March and April still had more-or-less one KBR publisher identifier for each record with a KBR source identifier. With the first few fixes of some of the commits below we could already get the number of source publisher identifiers for FR-NL translations from 1603 to 2121 and from NL-FR translations from 930 to 1063. However, we still have to reach 2121 and 2074 respectively.

With the fixes above we reached

FR-NL: 2,121 (instead of 1 ,603) from 2,912
NL-FR: 1,063 (instead of 930) from 2,074


Changing the number of uses for a weightless item changes its quantity

When clicking on the + or - buttons next to a weightless inventory item with a number of uses, the quantity of the item goes up or down rather than the number of uses left.

This is working almost as planned - weightless item means that you can have as many of it as you want, in the single equipment slot. Thus plus/minus is changing quantity instead of number of uses. However, we should hide use counter for weightless items.


Populate controls help option in menu

The work for this task ended up being lumped in with task #142


Fix batch index filter issue in Consumer.

Motivation
Fix batch index filter issue in Consumer. The previous logic is wrong at https://github.com/apache/pulsar/blob/master/pulsar-client/src/main/java/org/apache/pulsar/client/impl/ConsumerImpl.java#L1344, this should be opposite.
Does this pull request potentially affect one of the following parts:
If yes was chosen, please highlight the changes

Dependencies (does it add or upgrade a dependency): (no)
The public API: (no)
The schema: (no)
The default values of configurations: (no)
The wire protocol: (no)
The rest endpoints: (no)
The admin cli options: (no)
Anything that affects deployment: (no)

Documentation

Does this pull request introduce a new feature? (no)

/pulsarbot run-failure-checks

/pulsarbot run-failure-checks

/pulsarbot run-failure-checks


add src/scss/utils/_all.scss

Add src/scss/utils/_all.scss to make modular css importing easier. Change import of utils in src/scss/buefy.scss to reflect the addition.
Also, add to documentation at https://buefy.github.io/#/documentation/customization, maybe as alternate code for example under "It can be done in your App.vue within the

Thanks for this


Resultant merged polygon is malformed GeoJSON

This gist reproduces the issue: https://gist.github.com/noffle/aad0b1db44a2e443b8c64897897064d0
There are three large Polygons, which produce a MultiPolygon when merged. However, each LinearRing inside does not repeat the first coordinates as the last coordinates as per the GeoJSON spec. This issue doesn't seem to appear with all merges, just this particular case. I notice that if I remove the 3rd polygon, this issue is no longer reproduced.

This looks like this is caused by incorrect winding order on the input geojson. Rewinding the input geometry before merging results in correct output. It seems like topojson is picky about GeoJSON being valid, fair enough. FYI geojson-rewind does not currently rewind GeometryCollections https://github.com/mapbox/geojson-rewind/pull/14

Great find, @gmaclennan!


ENH: Extract cHPI pos from ctf data

CTF data stores the chpi fits (x,y,z) as channels in the data file  HLC0011-* etc.
Extracting a pos structure to be used in other mne calls (motion correction etc) is relatively straight forward.
Before I do PR I wanted to input on where this code should go?

I could add it to the add a public function to chpi.py.  The downside is this would be a public function and would only work with CTF data.
I could add it to somewhere in mne.io.ctf

Does anyone have any strong opinions on this?

I am also unsure about the coordinates that are in info['hpi_results']['dig_points']?
from https://github.com/mne-tools/mne-python/blame/master/mne/io/ctf/info.py#L50-L52 they seem to be in device coords not 'ctf device' coords. so to bring them into head (mne) coords i just apply dev_head_t?
If i want the transform from 'ctf device' coords to head coords is that transfrom somewhere or do i need to recreate it? using this https://github.com/mne-tools/mne-python/blob/master/mne/io/ctf/trans.py#L116-L120 and dev_head_t?

CTF data stores the chpi fits (x,y,z) as channels in the data file HLC0011-* etc.

What do you mean x/y/z, is that x/y/z of each coil? So some transformation is still necessary to get quaternions? It can't be (only) x/y/z of the head unless there is also rotation information stored (unless they ignore that?).

I could add it to the add a public function to chpi.py.

Yeah something like ctf_chpi_to_head_pos (I don't like that name but you get the idea) would be fine. I think we want to stick with the Neuromag convention for head positions (time, pos, quats, etc.) if possible  -- it seems complete enough to rally around.

they seem to be in device coords not 'ctf device' coords. so to bring them into head (mne) coords i just apply dev_head_t

I haven't wrapped my head around the CTF coordinate stuff. I think you're right, but you should be able to cross-check by comparing the digitization and info['dev_head_t'] to the first few positions you obtain through whatever conversion you do.

If i want the transform from 'ctf device' coords to head coords is that transfrom somewhere or do i need to recreate it?

I think relevant information gets extracted by _make_ctf_coord_trans_set, but it doesn't look like the CTF device transform survives anywhere publicly.

So I have the function written. I'm going to do some sanity tests with it later this week, but I'd like to get some other testers with there own data sets. is a PR the best way to do that? I could also share a gist if that is easier ??
;-----------------------------------------------------------------------------------------------------------------------------------
to answer the above questions

What do you mean x/y/z, is that x/y/z of each coil?

yeah they store xyz for each coil so you need to compute a transform mapping those locations to the locations stored in the hz file and eventually in info['hpi_results']['dig_points']

I haven't wrapped my head around the CTF coordinate stuff. I think you're right, but you should be able to cross-check by comparing the digitization and info['dev_head_t'] to the first few positions you obtain through whatever conversion you do.

This seems to be handled correctly through the various transforms. To ask a thorny question... Why is there even a special designation for the CTF device coordinate space. When is it useful to relate ctf_device space to another device space (neuromag)?
This raises another point: what gets put into info['dig'] as cardinal points in the ctf code are not digitized points. they are the HPI locations mapped to head coords. Ctf expects the hpis to be on fiducial landmarks. the digitization (pos file) is done separate from the CTF acquire and is not needed to define the ctf head coords. all of the points that are loaded from the pos file are added as extra points I believe.
this is a case where it would be useful to see some new point types supported in the dig structure for instance the hpi coils both from the MEG fit as well as the digitization. some groups are also doing multiple acquisitions of the hpi and cardinal points with polhemus to look are stability. It would be nice to see that type of information encodable and visualizable somehow.

So I have the function written. I'm going to do some sanity tests with it later this week, but I'd like to get some other testers with there own data sets. is a PR the best way to do that?

If the API is clear then yeah, a PR is a good way to go because then people can easily check it out and interactively comment/iterate.

yeah they store xyz for each coil so you need to compute a transform mapping those locations to the locations stored in the hz file

Okay so you do need to actually compute the time-varying dev_head_t. Makes sense.

Why is there even a special designation for the CTF device coordinate space. When is it useful to relate ctf_device space to another device space (neuromag)?

IIUC it's because different manufacturers defined their spaces differently, there is no industry gold standard. For us the standard we follow is to use Neuromag device coords, but data can still come in from other device coordinate definitians / systems (and does with CTF data I think), and in those cases we need those transforms.

this is a case where it would be useful to see some new point types supported in the dig structure for instance the hpi coils both from the MEG fit as well as the digitization. some groups are also doing multiple acquisitions of the hpi and cardinal points with polhemus to look are stability. It would be nice to see that type of information encodable and visualizable somehow.

You can in info['dig'] define the same point in multiple spaces.
For the re-digitization, we could already add redundant points, i.e., those with the same kind and ident, and let the list ordering define which belongs to each redone set. We'd need to make some downstream functions smarter about picking points. But we should wait until people have a compelling use case for using this sort of thing in production analyses before we foist a heavier API on the MNE ecosystem.

I think this is fixed in master


Implement write feature for ATTRIBUTE_HEATER_SET_POINT message

With current web bluetooth implementation on windows/linux devices write communications seem impossible right now.


Support Coral on NUC

I am trying to take a look at you software but I have a problema with NUC and Coral.
My config:

# See the README for the full list of configuration options.
cameras:
  - name: Backyard
    host: <IP_ADDRESS>
    port: 554
    username: admin
    password: foobar
    path: /cam/realmonitor?channel=4&subtype=0
    motion_detection:
      interval: 1
      trigger: true
    object_detection:
      type: edgetpu
      interval: 1
      labels:
        - label: person
          confidence: 0.9
        - label: dog
          confidence: 0.9
        - label: car
          confidence: 0.9

# MQTT is optional
mqtt:
 broker: <IP_ADDRESS>
 port: 1883
 username: mqtt
 password: foobar

logging:
  level: debug

I am giving this error:
Traceback (most recent call last):
  File "viseron.py", line 7, in <module>
    from lib.config import ViseronConfig
  File "/src/viseron/lib/config/__init__.py", line 118, in <module>
    VALIDATED_CONFIG = VISERON_CONFIG_SCHEMA(raw_config)
  File "/usr/local/lib/python3.6/dist-packages/voluptuous/schema_builder.py", line 272, in __call__
    return self._compiled([], data)
  File "/usr/local/lib/python3.6/dist-packages/voluptuous/schema_builder.py", line 594, in validate_dict
    return base_validate(path, iteritems(data), out)
  File "/usr/local/lib/python3.6/dist-packages/voluptuous/schema_builder.py", line 432, in validate_mapping
    raise er.MultipleInvalid(errors)
voluptuous.error.MultipleInvalid: extra keys not allowed @ data['cameras'][0]['object_detection']['type']

I am running docker using this cmd line :
# docker run --rm -v /usr/share/hassio/share/viseron/recordings:/recordings -v /usr/share/hassio/share/viseron/config:/config -v /etc/localtime:/etc/localtime:ro -v /dev/bus/usb:/dev/bus/usb --privileged --name viseron --device /dev/dri roflcoopter/viseron:latest

Thank you in advanced.

Thanks for showing interest in the project and also for the great issue report!
type is not allowed to be specified under the object_detection block for a camera. It should be specified in the global domain, so your config needs to be like this:
# See the README for the full list of configuration options.
cameras:
  - name: Backyard
    host: <IP_ADDRESS>
    port: 554
    username: admin
    password: foobar
    path: /cam/realmonitor?channel=4&subtype=0
    motion_detection:
      interval: 1
      trigger: true
    object_detection:
      interval: 1
      labels:
        - label: person
          confidence: 0.9
        - label: dog
          confidence: 0.9
        - label: car
          confidence: 0.9

# MQTT is optional
mqtt:
 broker: <IP_ADDRESS>
 port: 1883
 username: mqtt
 password: foobar

object_detection:
  type: edgetpu

logging:
  level: debug

Let me know if this works out for you

Thank you @roflcoopter for your answer and sorry for my mistake.
Anyway I think x86 dockers machine doesn't have tensor flow.
Look my error now:
[2020-09-10 08:17:04] [lib.detector            ] [INFO    ] - Initializing detection thread
Traceback (most recent call last):
  File "viseron.py", line 163, in <module>
    main()
  File "viseron.py", line 43, in main
    detector = Detector(config)
  File "/src/viseron/lib/detector.py", line 20, in __init__
    from lib.edgetpu_detection import ObjectDetection
  File "/src/viseron/lib/edgetpu_detection.py", line 4, in <module>
    import tflite_runtime.interpreter as tflite
ModuleNotFoundError: No module named 'tflite_runtime'

Ahh i see what the error is.
can you run this for me and see if it works?
docker exec -it viseron bash pip3 install https://dl.google.com/coral/python/tflite_runtime-2.1.0.post1-cp37-cp37m-linux_x86_64.whl
If it does i will add it to the image

ERROR: tflite_runtime-2.1.0.post1-cp37-cp37m-linux_x86_64.whl is not a supported wheel on this platform.

Hmm what kind of machine are you running on?

It's a Intel NUC i3

Okey now i get it, the base ubuntu image contains python 3.6 so this would be the correct one.
docker exec -it viseron bash pip3 install https://dl.google.com/coral/python/tflite_runtime-2.1.0.post1-cp36-cp36m-linux_x86_64.whl

Now it's works thank you!
but:
[2020-09-10 11:25:29] [lib.detector            ] [INFO    ] - Initializing detection thread
Traceback (most recent call last):
  File "viseron.py", line 163, in <module>
    main()
  File "viseron.py", line 43, in main
    detector = Detector(config)
  File "/src/viseron/lib/detector.py", line 24, in __init__
    label_path=self.config.object_detection.label_path,
  File "/src/viseron/lib/edgetpu_detection.py", line 13, in __init__
    self.labels = self.read_labels(label_path)
  File "/src/viseron/lib/edgetpu_detection.py", line 42, in read_labels
    labels[int(pair[0])] = pair[1].strip()
IndexError: list index out of range

it looks that the edgetpu labels file is not present in the docker image for NUC. I got a i3 NUC with Coral too.

Thank you @roflcoopter now it's works.

Great! Closing. Feel free to reopen this or a new issue if you are having trouble

it looks that the edgetpu labels file is not present in the docker image for NUC. I got a i3 NUC with Coral too.

I was missing such file because I was using the roflcoopter/viseron-vaapi:latest image.
How should I make sure that ffmpeg is using vaapi in the decoding of the h264 image?

I will fix so EdgeTPU is fully installed in the VAAPI image, along with models etc.
When you run the VAAPI image, it will automatically genereate the proper hwaccel arguments for ffmpeg.
What does your docker run command look like? And what processor do you use?

What does your docker run command look like?

I use docker compose (inside Portainer):
  viseron:
    container_name: viseron
    restart: unless-stopped
    network_mode: bridge
    privileged: true
    #image: roflcoopter/viseron-vaapi:latest
    image: roflcoopter/viseron:latest
    devices:
      - /dev/dri:/dev/dri
    volumes:
      - /dev/bus/usb:/dev/bus/usb
      - /etc/localtime:/etc/localtime:ro
      - /srv/docker/viseron/data:/config
      - /mnt/cctv/viseron:/recordings

And what processor do you use?

My /proc/cpuinfo says Intel(R) Core(TM) i3-4150 CPU @ 3.50GHz.

if you turn on debug logging for the camera, what does the default ffmpeg command look like?

if you turn on debug logging for the camera, what does the default ffmpeg command look like?

Indeed, it looks that the viseron container activate by default the vaapi con camera decoding:
[2020-09-12 09:59:27] [lib.camera.camera_1     ] [DEBUG   ] - FFMPEG decoder command: ffmpeg -hide_banner -loglevel panic -avoid_negative_ts make_zero -fflags nobuffer -flags low_delay -strict experimental -fflags +genpts -stimeout 5000000 -use_wallclock_as_timestamps 1 -vsync 0 -hwaccel vaapi -hwaccel_device /dev/dri/renderD128 -hwaccel_output_format yuv420p -rtsp_transport tcp -i rtsp://camera-1.lan:554/h264 -f rawvideo -pix_fmt nv12 pipe:1,

So the above hwaccel_args should not be necessary, right?

No it shouldnt,  however it looks like you still have them in your config as -hwaccel_output_format yuv420p is not part of the default command


Update .pre-commit-config.yaml to fix black dependency issue

Update black to fix issue with broken click dependency.
See https://github.com/psf/black/issues/2964

🤔 What's changed?
Dependency update for black linting, as there was an internal dependency issue.
⚡ What's your motivation?
It fixes the dependency issue for black (only a dev dependency, not affecting application dependencies).
Fixes #96
(Thanks @olleolleolle for raising!)
🏷 What kind of change is this?

:bug: Bug fix (non-breaking change which fixes a defect)

♻ Anything particular you want feedback on?

📋 Checklist:

[x] I agree to respect and uphold the Cucumber Community Code of Conduct
[ ] I've changed the behaviour of the code

[ ] I have added/updated tests to cover my changes.

[ ] My change requires a change to the documentation.

[ ] I have updated the documentation accordingly.

[ ] Users should know about my change

[ ] I have added an entry to the "Unreleased" section of the CHANGELOG, linking to this pull request.

This text was originally generated from a template, then edited by hand. You can modify the template here.

@jsa34 Cool!

@jsa34 AWESOME 🎉


Please update to support iCue version 5.X

This is just a request, I love the command line software you made, I am really hoping you will be willing to update it to support the latest iCue version 5.x Thank you for your time and consideration.

agreed.  I think and I havent created a PR, but I think all that maybe needs to be done is change four to five here
https://github.com/Legion2/open-cue-service/blob/5c28e7e7cc45eb77b873500a4922859cf473698d/src/ProfileManager.cs#LL12C1-L13C1
but I dont have a kotlin compiler installed but might give it a go

Does the directory exist with the CUE5 and is the directory structure the same as before?

Looks like that is the only change that needed, I need to get a hand an a windows computer to verify this.

I created https://github.com/Legion2/open-cue-service/pull/73, the CI build should produce an executable which you can test if they work with CUE5.

Fixed by #73, I release the update 1.1.0

Thanks so much for releasing this change so quick, sending cookie money.  Would suggest perhaps installed version detect and change that ref to the profile directory.  Alternatively, I suppose we might have been able to make a junction.  Perhaps to future proof this, or so its compatible with 3, 4 and 5, maybe the GameSDKDirectory could be in profiles.json so user can config?

Thanks. Your suggestion sounds good but we never know what will change/break in a future version.

Thank you good sir, I will try this out soon. I / we really appreciate it!


If the the same service is already linked to another user, linking dies silently

If the same account (same username from twitter) linked to another user, there is no error in server console or client.
The only evidence I have in kadira from Error: [This social account is already in use by other user]
at packages/bozhao_link-accounts/link_accounts_server.js:56:1
And since the popup window is closed momentarily, user believes account should be linked, but it is not happening

I will throw an error out in the next version, you will have to catch it on the server side

There are certain situations in which we may want to allow multiple users to link with the same social account (i.e. multiple users posting from the same twitter account). What is your feeling about allowing this behaviour? Perhaps one could provide a whitelist of services for which this is allowed (thus ensuring we only allow this "double-linking" behaviour for accounts we expect it to occur on)?

@ttacon. Yep. There is that case as well.  Link different accounts from same service to meteor is not hard. But I have to make sure the login will works correctly.
As of now, we get a free login with different services.
I.e. (Twitter A, Facebook A) can both login to same account.
(Twitter A, Twitter B, Facebook A) Both Twitter account would have issue now.
Let me know what you think.
(Typing this during morning commute, so might not make much sense)

Haha, no worries! I entirely agree, so what about the following:

We can provide a whitelist of services that know that they can allow linking multiple users to the same info.

Otherwise emit a more specific error message on a duplicate linking attempt.

Thoughts?

I think those are good ideas.
Let me sink in idea 1 for a bit. Since right now. This is almost "invisible" package in the sense of application developer doesn't have to config anything.
As far as number 2. I will work on it this weekend.

Is the error being implemented? Would be quite helpful so we can just render a popup that says "This app has already been linked with another account". Otherwise it causes a bit of confusion

@adamwan92 I haven't have enough free time to work on it, will try to get it done over July 4th.

For those who are facing the same problem, I found a quick fix.
  linkGoogle(){
    var self = this;
    Meteor.linkWithGoogle({}, function (err,res) {
      if (Meteor.user().services.google){
        // code for if successful
      } else {
        // error message goes here
      }
    });

  }

So after the Meteor.linkWithGoogle call is completed, it'll check if the user is linked with Google by checking if Meteor.user().services.google exists.

Scheduling this for v2.3


add hello text file

This is a test PR. Please do well to close it off.

Thank you . Your test works.


No Code

OK, hope I have not made a big mistake. I see this repository is 3 years old, so the course is not exactly current maybe? But anyway looks like this repository has no code in it, not good?

Hey @MickCG, every module has the starting branch and the end branch. You can follow along by picking the branch you want for each chapter, whether you work on your own or use our code. Do check the branches, we've added an explanation of where to find the code in the introductory material.
For example, the code for the module 2 end is here.


Add access log response flag for downstream request cancel

Title: Add access log response flag for downstream request cancel
Description:
If a downstream client cancels an HTTP request (for instance if the per try timeout is hit), server-side access logs show a "0" response code and no health flags. Example:
[2018-11-26T03:17:43.818Z] "POST /foo HTTP/2" 0 - 32 0 450 <snip>

This is signifying that the request terminated before a response code was sent (because the client hung up), which seems like a nice case for a response flag.

@mpuncel seems reasonable, so you want to work on this?


[Feature Request] el-Select add more select slots "prepend" "append" same as el-input

Existing Component
是
Component Name
Select
Description
to keep a same view ,please add slots "prepend" "append" for el-select

pr welcome


Reset app data automatically

resets to an empty (or pre-set) task list [daily] at 07:00 UTC.

This is to avoid the dataset needing maintenance over time, and limit risk of app abuse as any unwanted user data will only last at most a day

We can use the new scheduler in 0.8.0 for this


chore: only build modified ECS projects

Contributes to #148
What?
ECS Projects only are going to build in case of modification (even at first make build)
TODO:

[x] Calculate stat of child folder files

why is this blocked?

why is this blocked?

It was blocked because we're only stating the parents folder, that means if we change something in game.ts it wasn't going to compile eiter. Now that's solved

Is this still blocked? What's the cause of it breaking the watcher?

Is this still blocked? What's the cause of it breaking the watcher?
Because in case it doesn't have to rebuild it, it just skip decentraland-compiler which is the one in charge of watching those files in the first place

I'll close this PR. We should either implement this logic in decentraland-compiler as a --cache flag or implement TS 3.4 incremental builds


Hide gridlines in export

Hi,
I want to export an google sheets as PDF. I have it working wright now with the method: $this->service->files->export($uid, 'application/pdf', ['alt' => 'media']);
The only problem I have is that I want to hide the gridlines, is that possible?

Hi @NielsKnaap
Sorry for the extremely late reply on this issue.
I don't think the export API natively supports an option to hide grid lines.
I was able to find a solution on Stackoverflow which uses  BatchUpdateSpreadsheetRequest which essentially updates the sheet's proprty first to hide the grid lines, then we proceed with the export and the result is intended.
Here is the sample I used and tested:
function downloadSheetAsPdf($client) {
    $sheetId = "";
    $sheetService = new Sheets($client);
    $requests = $requests = [
        new \Google_Service_Sheets_Request([
            'updateSheetProperties' => [
                'properties' => [
                    'sheetId' => 0,
                    'gridProperties' => [
                        'hideGridlines' => true
                    ],
                ],
                'fields' => 'gridProperties.hideGridlines'
            ],
        ])
    ];

    $batchUpdateRequest = new \Google_Service_Sheets_BatchUpdateSpreadsheetRequest(['requests' => $requests]);
    $sheetService->spreadsheets->batchUpdate($sheetId, $batchUpdateRequest);

    $driveService = new Drive($client);
    $response = $driveService->files->export($sheetId, 'application/pdf', ['alt' => 'media']);
    file_put_contents("test.pdf", $response->getBody()->getContents());
}

Of course, this has a side effect of changing the source's properties, but that can be undone after the download if it suits anyone reading this.
Thanks for your patience on this, I'll be closing this issue now.


Added US specific intro and scripts to make bin/cue

On US versions of the game, the game should now play the US specific intro, which I have put into track 52 for convenience (other intros/outros are bumped up by 1 track).
I have also added scripts to make the bin/cue file without going through the tedium of burning and ripping. poweriso, binmerge and ffmpeg are required for this script to work, and correctly named WAV files (according to TPLSTSR4.cue) should be included in the CD folder.
Also added gitignore.
I've added my generated image as a release in my repo, please feel free to borrow it for any future release, I took a lot of effort into making sure that every track was perfect, including manually correcting the audio offsets to account for mastering differences in different CDs.

Thanks so much for this! I will merge this. Do you mind if I republish your release on my releases section to make sure people see it? Then I'll continue investigating adding new functionality for the "MIDI" tracks…

Thanks so much for this! I will merge this. Do you mind if I republish your release on my releases section to make sure people see it? Then I'll continue investigating adding new functionality for the "MIDI" tracks…

Please do! I went to a lot of effort to try and make sure the tracks were as correct as possible


Train on custom data for indoor reconstruction

Hi, I wonder to know if it's possible to apply your work to indoor scenes reconstruction. I plan to train the code on Scannet Dataset which provides images for indoor scenes. After training with many scenes from dataset, during test I want to get the room 3D mesh from unseen scene with 4 images taken from 4 corners of a room (not from dataset).
I mainly consider two issues.

Your work is on the object and has no background. Do you think it is possible to apply it to indoor reconstruction?
My ultimate goal is to use the trained model to synthesize the room I shot myself through 4 pictures. There is very little overlap in the shooting angles. Do you think this is feasible?
If you have any suggestions I'd love to hear them before I start trying. Thanks a lot.

Hi! While indoor reconstruction should be theoretically feasible within the single-stage framework, you will have to tune quite a lot of hyper-parameters and maybe modify some modules to make it work, since all our models are optimized for single-object scenes with surrounding cameras.

You probably need to add a trainable background. You can refer to the implementation in torch-ngp as we borrowed their renderer.
4 views without overlapping should be no problem. SSDNeRF is designed for arbitrary views anyway. However, tuning the guidance/finetuning hyper-parameters requires some patience on a new dataset.

In general, I would recommend starting from reconstructing the training scenes based on this stage1 config, without training the diffusion model. Once you find the NeRF-decoder good enough, you can start over with single-stage training, where you need to adjust the loss weights to balance the diffusion and rendering loss.

Thank you so much for your suggestion. In order to prevent overfitting, I will find other datasets such as Replica to construct a larger indoor dataset. Then take experiment as your suggestion.
I have another question, do you suggest that I modify the input size in your code according to the aspect ratio of the input image? Thank you very much for your time.

The size of the code should be in accordance with the dimensions of 3D scenes instead of the images. The current square triplane code is most definitely not an efficient interior representation. I would recommend referring to some existing interior representations, and you may try integrating some well-established models into the SSDNeRF framework.

I conducted preliminary experiments on one NVIDIAA10080GBPCIe GPU. Without considering overfit, a train/valid/test split of 1500/100/20 for rooms was constructed and each scene has 100 views (image shape 128*128). Under this setting, one training step takes about 2 minutes to complete, which is far behind the 0.5 sec achieved by the two RTX 3090 GPUs in the paper. This also meant that my experiment could not be completed in a reasonable amount of time. In order to further develop the experiment, I would like to ask you some possible reasons and any suggestions so that I can run preliminary results in a reasonable time.

If you GPU usage is high, then this is probably normal and you only need to wait till around 1k~2k iterations before the occupancy-based pruning strategy takes effect, which speeds up rendering. If you GPU usage is low, then the bottleneck could be I/O or CPU.

After reading the code, I found that the reason for the slow training was that the evaluation.interval was not set in the 4-view congig file. This resulted evaluate_3d() in GenerativeEvalHook3D be performed after each iter which is very slow. I noticed that in the 1-view file, the interval is set to be 20k. So I would like to know, in the 4-view config, is it necessary to set this parameter to 1?

The 4-view cfg and 1-view cfg are equivalent apart from testing configuration. You can either train everything using the 1-view cfg, or set a desired interval in the 4-view cfg for training.


update KUBELET_HOST to contain actual ip

Recent changes in k8s , https://github.com/kubernetes/kubernetes/pull/82413
checks for KUBELET_HOST in get nodes info, which is resulting in
error. This commit is to update the same.

cc @adisky

/lgtm


Site search middleware

How awesome would it be if your web server kept a static page search index (periodically updated) for your site and rendered search results onto a custom HTML template? No need for external services and no hassle setting it up - just another directive in the Caddyfile. I can think of many times in the past I would have used something like this if it was built right into my web server.
Thoughts on this? Feel free if you want to give it a shot - just comment here. This could be a fun and really useful middleware to have.

Could you give some more information you have in mind for this idea? An example?
How would this search work? How would the result be printed?

Here's what I was thinking:

At startup, the middleware launches a service goroutine that runs for the lifetime of the server. Initially it creates an index of the site... presumably in memory, although there are good packages for lightweight persistent data stores available too.
Periodically the service function re-indexes.
An endpoint is "exposed" (meaning that a request to a certain URL would be handled by the search middleware and not passed onto other handlers) such as /search (customizable).
The search results would be rendered by a template specified by the user (or perhaps a custom template), similar to the browse middleware.
The search endpoint could also be exposed as a JSON API

Ok, got everything.
I'll try work something out.

Awesome! You got it. This is something that would make a great addition to any site.
There is a pretty popular indexing library called bleve that might be worth looking into.

Yay, this is done! \o/ Thanks @pedronasser

@mholt what's about this functionnality? Which directive should I use to have a search bar in my website and a /search endpoint?

@blankoworld I think it was https://github.com/pedronasser/caddy-search, but it doesn't seem supported anymore as far as I can tell. It's not in the official list of plugins anymore


local storage will throw QuotaExceededError on Safari 9.1.2

It will throw fetchData error: – Error: QuotaExceededError: DOM Exception 22 error after login in Safari

In safari, localStorage limit size is 5MB. In some accounts, cache data will exceed this quota. We need to reduce cache size


Implement Exchange.readtree and Exchange.writetree

Exchange.readtree and Exchange.writetree will be used in place of shutil.copytree. readtree recursively reads files (not including ignored files) from a source directory and converts it to an encoded directory tree. writetree writes files (not including ignored files) from an encoded directory tree to the destination directory.

closing this issue. I implemented encode_dir and decode_dir in the base Exchange class to have this functionality.


Hash doesn't match for certain files.

I've done well over 100 updates while testing and every once in a while I'll get this error.  Seems to only happen when I have a new css file updated, which doesn't make sense.  I'm generating the manifest on a windows machine and confirmed the hashs are the same locally and on the server.  I was starting to wonder if the code generates a different hash than the machine as I've seen that in the past with Java.  Has anyone else come across this?

Do you use the chcp cli tool to generate the manifest? I've haven't run into this issue using it, but I did using the gulp implementation mentioned here: https://github.com/nordnet/cordova-hot-code-push/issues/54. Somehow it generates different MD5 hashes.

Yes,  I'm using the chcp cli tool. It just happened again on my config.js
file.  Starting to think it's with generated files somehow. My css file is
generated from a preprocessor and some gulp tasks updated the config file.
The other 20 some odd files that I manually updated match.  It's almost as
if generated files from windows get a different hash from the objective c
function. I've verified all files from the server match the hash in the
manifest.
On Jan 27, 2016 5:47 PM, "Job"<EMAIL_ADDRESS>wrote:

Do you use the chcp cli tool to generate the manifest? I've haven't run
into this issue using it, but I did using the gulp implementation mentioned
here: #54 https://github.com/nordnet/cordova-hot-code-push/issues/54.
Somehow it generates different MD5 hashes.
—
Reply to this email directly or view it on GitHub
https://github.com/nordnet/cordova-hot-code-push/issues/96#issuecomment-175899744
.

@dwhitmore Are you getting this error for iOS only, or also for Android?
Have you tried to regenerate hashes when you hit this issue without updating files? Then compare old and new manifest files. And then run mobile app again, to check if it will load files from the server.
Don't have a windows machine at the moment to test that. But it's either wrong hashes in the manifest file on the server, or wrong hash generation on one of the sides (mobile or web). Just trying to understand on which one...
Also, if it works fine for android, but breaks for iOS - that will narrow it down.
I was capturing that problem, when I used local development add-on and was updating some file very quickly in a short period of time. That lead to the situation, when app loaded old manifest file, but downloaded file, that was updated after the manifest generation. But if you are not doing it like that - then this isn't your case.

It seems to be wrong hash generation on the mobile side when it checks the downloaded files validity.  I'm only using IOS at the moment, haven't looked at android.  Also, can't reproduce on a steady basis, just seemed to have narrowed it down to generated files for some reason.  But I have seen this in the past when comparing Java MD5 hashs vs system MD5 hashes.

How I love those kind of bugs... So it's objective-c hash vs windows hash. Thanks for the info, will see what I can do with that...

@dwhitmore since it is on windows, check to see if you are generating hashes when files have CRLF line endings. Git is configured by default to translate line endings.

@davidovich Not using Git but I had that same feeling about the css preprocessor.  However, by opening up the generated style.css and adding some spaces and saving I would still get the same result.  That just confused me more.

@dwhitmore I still feel this is a line ending issue. Can your editor show the whitespace in your file? You can also use a diff program to show the whitespace difference.

It doesn't even have to be an error locally or on mobile itself.
I just ran into this issue and it was the transfer mode from the ftp client, which uploaded about 50% of the files in ASCII instead of binary (was set to auto).
Interestingly I haven't had that issue on another project (ionic 1) and same ftp, but on my current one (ionic 2, Typescript).
Maybe because I'm using my own minify-script in the first project, stripping comments, newlines and so on and relying on ionics tasks in ionic 2 (which does not do that, they just concat files).
Just to get that out there as it can be a very hard error to spot, you don't run into ftp issues that often.

@ventr1x that's an interesting note, thanks for sharing :) Really tricky to spot, indeed.


Ensure all admin pages are protected routes

/add for add clubs needs to be updated. other routes have not been confirmed.


⚠ Processors has degraded performance

In 05e3fee, Processors ($STATUS_URL) experienced degraded performance:

HTTP code: 200
Response time: 85 ms

Resolved: Processors performance has improved in f844fdf.


Bot sends card with wrong image

I've been trying to send a card with an updated image but the image isn't updating. I've cleared my MSTeams cache.
It has been over 24 hours and the image still isn't updating.
Developer view shows image url as:
https://urlp.asm.skype.com/v1/url/content?url=https://teams.webexapps.com/assets/webex_icon_300ppi.png
This is wrong. Image url should be: https://teams.webexapps.com/assets/webex_icon_300ppi.png
What is going on here?

@liangchr - could you please share screenshot of what you see? I could see following for both the URLs:

@Wajeed-msft I see:

for the first one and:

for the second one.

tried native chrome, desktop, and edge. My machine is macos. The image refuses to update for me.

@Wajeed-msft this is what my machine redirects to: https://urlp.sfbassets.com/urlpcdn/nus1/contentdel30/b2917c05-32fd-45d9-9b49-077744851502

@liangchr - Thanks for sharing the screenshot and URLs. Team is already looking into this. I'll let you know once I have further updates.

@liangchr - could you please share the card json or bot code that is sending the card and image?

@liangchr - Are you still facing this issue? could you please share the card json or bot code that is sending the card and image?

@Wajeed-msft fixed. had to clear browser history though. It was really annoying :) Thanks for the help!


Configurable max_retry

Once we have the Failure from #7 , it would be trivial to setup a max_retry configuration that automatically rejects the event after such max_retry

Fixed in #13


[GOBBLIN-1982] Show a consistent flowExecutionId btwn Compilation & Execution

Dear Gobblin maintainers,
Please accept this PR. I understand that it will not be reviewed until I have checked off all the steps below!
JIRA

[X] My PR addresses the following Gobblin JIRA issues and references them in the PR title. For example, "[GOBBLIN-XXX] My Gobblin PR"

https://issues.apache.org/jira/browse/GOBBLIN-1982

Description

[X] Here are some details about my PR, including screenshots (if applicable):
The problem statement addressed in this issue is to determine a unique ID per execution that is agreed upon by all hosts, computed before returning any information back to user (about compilation or execution).

Upon receiving the request for an adhoc flow, the recipient host creates a flowExecutionId when initializing FlowSpec from config for non-scheduled flows (see code). This flowExecutionId is returned to the user for tracking the flow status. This should not change later on.
Scheduled flows are fired upon each host at a different system clock time, so those ones need a consensus mechanism to coordinate between hosts. During multiActiveLeaseArbitration we update the flowExecutionId of a DagAction with an agreed upon value from the database to gain this consistency. However, this should only be done for scheduled flows before we any information externally about the flowExecutionId until later.
To address the problems above we

skip flowExecutionId replacement for adhoc flows
remove a flow compilation and GTE emission before the consensus on flowExecutionId is removed.
There's no significant impact of removing this check. It will result in dagActions created for flows that may fail compilation later (after lease arbitration and before execution). Since we already compile the flow on accepting it, we are okay with a slight delay in failing a flow.

Tests

[X] My PR adds the following unit tests OR does not need testing for this extremely good reason:
The flowExecutionId replacement is tested by existing unit test testAcquireLeaseSingleParticipant and the new functionality is tested by testSkipFlowExecutionIdReplacement.

Commits

[X] My commits all reference JIRA issues in their subject lines, and I have squashed multiple commits if they address the same issue. In addition, my commits follow the guidelines from "How to write a good git commit message":

Subject is separated from body by a blank line
Subject is limited to 50 characters
Subject does not end with a period
Subject uses the imperative mood ("add", not "adding")
Body wraps at 72 characters
Body explains "what" and "why", not "how"

Codecov Report
Attention: 3 lines in your changes are missing coverage. Please review.

Comparison is base (f8880ed) 47.57% compared to head (2bc4f32) 48.71%.

Files
Patch %
Lines

...in/service/modules/orchestration/Orchestrator.java
72.72%
2 Missing and 1 partial :warning:

Additional details and impacted files
@@             Coverage Diff              @@
##             master    #3854      +/-   ##
============================================
+ Coverage     47.57%   48.71%   +1.14%
+ Complexity    11073     3588    -7485
============================================
  Files          2160      700    -1460
  Lines         85564    28433   -57131
  Branches       9507     3308    -6199
============================================
- Hits          40703    13851   -26852
+ Misses        41153    13175   -27978
+ Partials       3708     1407    -2301

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


[FIX][14.0] only run prettier xml on .xml files (like 13.0)

In the continuity of https://github.com/OCA/oca-addons-repo-template/pull/46

@sbidoul is it OK for you? I suppose that this needs to be re-applied on all 14.0 branches.

@sbidoul is it OK for you? I suppose that this needs to be re-applied on all 14.0 branches.

Why do we want to do this ? Will that not make prettier run on xml files only, and disable it for js files ?
In 13, there is a subtle difference: there are two prettiers hooks: the default one that runs on many extensions except xml, and one that runs on xml only.

Why do we want to do this ? Will that not make prettier run on xml files only, and disable it for js files ?
In 13, there is a subtle difference: there are two prettiers hooks: the default one that runs on many extensions except xml, and one that runs on xml only.

Will that not make prettier run on xml files only, and disable it for js files?

Looking at it now I think @sbidoul is right. If the point is to enable the prettier xml plugin only for xml files, maybe the solution is to create 2 separate hooks: 1 without the xml plugin that will apply to all files, and another that will have the spec suggested in this PR.
Could that work?

Will that not make prettier run on xml files only, and disable it for js files?

Looking at it now I think @sbidoul is right. If the point is to enable the prettier xml plugin only for xml files, maybe the solution is to create 2 separate hooks: 1 without the xml plugin that will apply to all files, and another that will have the spec suggested in this PR.
Could that work?

And what is the current problem?

And what is the current problem?

I missed the double prettier hook indeed.
The problem I faced initially was that prettier/plugin-xml fails to parse some xsd files, e.g. https://github.com/OCA/edi/blob/18ff921968ed79cd745403183cc040b815c19dab/base_ubl/data/xsd-2.1/common/UBL-xmldsig-core-schema-2.1.xsd
I don't think that we should run prettier/plugin-xml on anything else than odoo xml files as other xml types of files have high chance of being provided by third parties.

I missed the double prettier hook indeed.
The problem I faced initially was that prettier/plugin-xml fails to parse some xsd files, e.g. https://github.com/OCA/edi/blob/18ff921968ed79cd745403183cc040b815c19dab/base_ubl/data/xsd-2.1/common/UBL-xmldsig-core-schema-2.1.xsd
I don't think that we should run prettier/plugin-xml on anything else than odoo xml files as other xml types of files have high chance of being provided by third parties.

I think the problem is the path of your XSD file. Why is inside data folder? That folder is for Odoo XML data files.

I think the problem is the path of your XSD file. Why is inside data folder? That folder is for Odoo XML data files.

I see. My stance on this is that we should list explicitly the file extensions we want prettier to handle.

I see. My stance on this is that we should list explicitly the file extensions we want prettier to handle.

Wasn't certain folders blacklisted for prettier (like /static/lib)?

Wasn't certain folders blacklisted for prettier (like /static/lib)?

In short term, changed to match with the behavior of 13.0, as described by @joao-p-marques :

create 2 separate hooks: 1 without the xml plugin that will apply to all files, and another that will have the spec suggested in this PR.

Is it ok?

In short term, changed to match with the behavior of 13.0, as described by @joao-p-marques :

create 2 separate hooks: 1 without the xml plugin that will apply to all files, and another that will have the spec suggested in this PR.

Is it ok?

@sbidoul is it correct now?

@sbidoul is it correct now?

Oh sorry I now understood https://github.com/OCA/oca-addons-repo-template/pull/47#issuecomment-754544689 and how it relates to the code. I think this is not the solution he was suggesting.

Oh sorry I now understood https://github.com/OCA/oca-addons-repo-template/pull/47#issuecomment-754544689 and how it relates to the code. I think this is not the solution he was suggesting.

Hi @sbidoul is https://github.com/OCA/oca-addons-repo-template/pull/48 what you had in mind?

Hi @sbidoul is https://github.com/OCA/oca-addons-repo-template/pull/48 what you had in mind?

@pedrobaeza while doing some more research on this topic, I stumbled on this comment: https://github.com/prettier/plugin-xml/issues/17#issuecomment-555445966
/web/static being excluded indeed, in an early version of the hook focused on xml files only
Do you think it would still be needed in some repos? Or should we better use explicit .prettierignore files for such cases?

@pedrobaeza while doing some more research on this topic, I stumbled on this comment: https://github.com/prettier/plugin-xml/issues/17#issuecomment-555445966
/web/static being excluded indeed, in an early version of the hook focused on xml files only
Do you think it would still be needed in some repos? Or should we better use explicit .prettierignore files for such cases?

I think that adding that sane defaults is good, but @Yajo and @sbidoul are the closest ones to the final implementation to say.

I think that adding that sane defaults is good, but @Yajo and @sbidoul are the closest ones to the final implementation to say.

well, actually all good @pedrobaeza I just noticed that /static/(src/)?lib/ is already globally excluded by default :)

well, actually all good @pedrobaeza I just noticed that /static/(src/)?lib/ is already globally excluded by default :)

Great then :)

Great then :)


Handle DHCPDISCOVER address hints

Currently we ignore the Requested_ip_address in a DHCPDISCOVER, would be nice to have this.
Some clients wrongly include a Requested_ip_address <IP_ADDRESS> to specify no preferences, this must be handled too.


Peer Review

Hi Group 28,
I was assigned to your group for peer review. Just some small thoughts below.
Make File

I tried starting from scratch by using make clean and then make all, but there are some packages that I didn't have such as chromedriver_binary. I don't think this is a problem but more of a heads-up for your docker step. I didn't install all the packages and just proceeded the review by restoring the files so if there are any issues in the make file after that I can't say for sure.
Documented well as I also saw that one of the scripts had a comment that it takes 2.5 hrs to run, so I didn't run the scripts to test
The make clean function worked perfectly

hotel_cancellation_predict_report.Rmd

Very minor but I thought it may be better to list all team members as authors for your report
It's mentioned that there is class imbalance, but I thought it would be nice to know the proportions for it as I was quite curious. I know this information is available in the EDA report but I was coming from the approach of someone just reading your final product.
Tables 2 & 3 could have more formal column header names (eg Classifier Name instead of classifier_name)
Overall, it was quite easy to follow along and I understood the analysis, good work!

Hi @micahkwok ,
Thanks for taking time and looking into our project. With respect to Make file, I believe once we have our Dockerfile, things will be easier. However if you want to run it before Milestone 4, I would suggest you use conda environment of 573 and install altair_saver and chromedriver_binary on top of that.
If you are using 573 environment, you may get some error in the last step as it uses R to render our final report. It depends on whether your R is set up to run from 573 or not. To quickly overcome this, you can switch back to base environment and run make all again to run the last part.
Cheers,
Debananda


[issue-3]Add Random float modifier & random int modifier implementation

Hi @DunDun1124, open close range is not handled

open close range is not handled

Close range is handled

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.1 out of 2 committers have signed the CLA.:white_check_mark: DunDun1124:x: victorteokwYou have signed the CLA already but the status is still pending? Let us recheck it.


Add Deadlines, Starttime & Endtime to tasks

Allow tasks to take on different forms
Events - with Starttime & Endtime
Deadlines - with only one time that the task is due

To be achieved in V0.2 after the completion of features #37 & #38.

Achieved in PR #67


Updated variable declaration to remove ambiguity

The current wording suggested that variables should be declared with const and then again with let when it is time to reassign them.

This is legit 👍 thank you !


[Shadow_reg] Unify the shadow reg field update error behavior

Hi Michael and Pirmin,
With AES and ALERT_HANDLER both have shadow registers, I found the have slight different behaviors:
1). For AES, the shadow registers are extended as registers: https://github.com/lowRISC/opentitan/blob/master/hw/ip/aes/rtl/aes_core.sv#L498
2). For ALERT_HANDLER, shadow registers are extended by each field:
https://github.com/lowRISC/opentitan/blob/master/hw/ip/alert_handler/rtl/alert_handler_reg_top.sv#L3512
So these two behavior swill cause the following difference:
If we have a shadow register (Reg_A) with two fields (Field_A, Field_B), both field 1 bits. Reset value b00.
Sequence:
a). First write with data b11
b). Second write with data b01
Both method 1) and 2) will trigger update alert, but read out this register before reset is different.
1). Will read out value b00
2). Will read out value b01, because field (Field_A) does not have update error, only Field_B has update error.
If possible, could we unify the behavior so it is easier for DV to automate it? Currently DV implemented as method 1), but happy to adopt with any design change.
Thanks,
Cindy

Thanks @cindychip for explaining the issue. I agree that we should try to unify the behavior here. Basically, the question is whether an update error in a single field must prevent updates of 1) all fields in a 32-bit register or 2) just the affected field(s). I think 2) as it is implemented in the alert handler works better with the regtool and is also a bit cleaner. So I am inclined to adapt the implementation inside AES.

Thanks Pirmin! Align with alert_handler behavior sounds good to me. @msfschaffner do you have any concerns?

Sorry for being late here. Am I assuming correctly that the difference in behavior is only because in the AES case the shadow register is implemented externally? In that case I also think that it would probably be best to align with the behavior that the regtool would generate.

No worries, thanks for your input Michael. II think your understanding is correct. @vogelpi do you mind aligning the AES shadow regs?

Yes, I can do the realignment of the AES shadow reg.

Yes, I can do the realignment of the AES shadow reg.

@vogelpi can you remind me, the reason the aes shadow registers are implemented externally, is that because you need a back-pressure behavior that does not natively exist in our normal regfiles?
I'm just wondering that since we are adding the concept of reg_busy due to CDC, we could add a similar idea for synchronous registers also.  Let me know what you think.

Oh.. I followed AES design in the PR #7439 . Maybe I should change that to each fields.

@eunchan, if it is not too hard to rewrite, that would be great!

@vogelpi can you remind me, the reason the aes shadow registers are implemented externally, is that because you need a back-pressure behavior that does not natively exist in our normal regfiles?

For AES, there are two reasons for making shadowed control reg hwext:

We need to be able to ignore/gate updates to the shadowed control register whenever the module is busy (back-pressure). I think with the current regtool only software can gate writes using the regwen feature.
We need to be able to resolve invalid values written by software. Most fields are one-hot encoded, if a value with two bits set is written, the hardware will resolve this to a specified one-hot value (e.g. AES_NONE for the mode field).

I'm just wondering that since we are adding the concept of reg_busy due to CDC, we could add a similar idea for synchronous registers also. Let me know what you think.

It would be nice to have to have this feature also for synchronous registers but for AES the second case still requires the register to be hwext (resolving invalid values).

@vogelpi for the resolving to a specified one-hot value, does that have to be done as part of the register itself?
Or can it be some downstream encoding / decoding logic?

I am not 100% sure but I think we want to have it in front of the register. Because the register output is what is compared to the shadow register. If an adversary managed to manipulate this downstream logic between register output and hardware using the value, this probably wouldn't be detected anymore.

@vogelpi when you are thinking about invalid values written by software, are you considering them in terms of a "fault", or a software bug/attack?
If it's the first category, I think the general principle we are operating on is that it "should" be difficult to glitch two instances of a write to exactly the same value.  If that happens, the shadow compare should fire, even if the decoding logic is downstream.
If it's an intentional software bug / attack, meaning both are written to an invalid value intentionally, then you're right shadow won't fire, but your downstream decoding I think would still work right?
btw, i'm not suggesting we change anything now, i just want to see if there's any chance of updating prim_shadow in the future to allow aes to fully rely on regfile instead of using hwext.

Hey @tjaychen , I consider invalid values written by software more as a software bug/attack. I agree that faulting two writes together with the integrity is difficult. And I also agree that the decoding would still work correctly in that case.
But I am more concerned about the case where a glitch manages to change the output of the decoding logic, but it doesn't propagate back to the register because there are maybe multiple logic levels between. In this case, the shadow compare won't fire. In general, I think we should try to keep the amount of logic low that sits between detection logic (shadow compare) and the logic that actually uses it.
Not having to use hwext for the AES shadow register would definitely be nice.
I was more thinking about an attacker trying to manipulate the IP behavior compared to faulting the two writes (I agree this is )

ah okay, so you're worried about the decoding logic itself being hit, and you don't know that there is a "bad" value, is that right?
But wouldn't this be true if it were in front of the shadow logic?
Because then software could introduce two bad rights, and those would both get "forced" into the same invalid value right?

Yes Tim, I am worried about the decoding logic being hit. If the decoding logic is before the shadow logic, 2 hits are needed with the right timing which is more difficult. If the timing isn't right, at least an update error is triggered but nothing is updated in the register.
I am not so worried about bad writes by the software. This usually indicates a programming error and not necessarily something terrible. Also, these are resolved to safe values by the decoding logic. The AES module won't start with these.
@cindychip , I've finally managed to do a PR here: #7713  Apologies it took me so long!

Yes Tim, I am worried about the decoding logic being hit. If the decoding logic is before the shadow logic, 2 hits are needed with the right timing which is more difficult. If the timing isn't right, at least an update error is triggered but nothing is updated in the register.
I am not so worried about bad writes by the software. This usually indicates a programming error and not necessarily something terrible. Also, these are resolved to safe values by the decoding logic. The AES module won't start with these.
@cindychip , I've finally managed to do a PR here: #7713 Apologies it took me so long!

sounds good. I think we should revisit this topic with a few others.  The reason is I think inevitably in our system, we are going to have places where the decoding logic (life cycle or others) is going to be "the thing" that has to hold up. Whether this means we make it wider, or like you've discussed hand instantiate cells to make it more robust, we'll have to find the right way to deal with it.  So to me, given that we have this situation elsewhere, I'm not sure it makes sense to have AES extra robust here.
However I do think we should consider absorbing "safe value" type systems into the regfile, that might be useful anyways in the long run.  Ie, we allow the user to declare an enum of the on/off values, and handle that natively.
Let me know what you think.

I agree with you Tim. Having the safe value resolution inside the regfile would be the preferred solution. It would be good if this was also used in other designs.
For now, I would keep the extra robustness in AES, but I am happy to change the design again if we decide to support safe value resolution natively in the regfile.

@cindychip assuming this isn't too much pain, I would say don't change AES at all.
We're not going to add the safe value i think any time soon..just because it will cause DV churn. so this is likely an item earmarked for the future.

I am fine with keeping AES as extra robustness. I can align the DV side. Please let me know if we are discussing this topic in the future meetings :)


rootless: not require userns for help/info/version

these commands do not require to be root in an userns
Closes: https://github.com/containers/libpod/issues/1263
Signed-off-by: Giuseppe Scrivano<EMAIL_ADDRESS>

podman help and podman version work but podman info gives me the following error:
could not get runtime: chown /home/vrothberg/.local/share/containers/storage/vfs: operation not permitted

@giuseppe Can we add integration tests for those three cases? Just to avoid any potential regressions.

@giuseppe podman info isn't working with the latest commit.

done, I've updated the PR title

@rh-atomic-bot r+


Add Despair engine detection

Some reference to the engine, such as the developer site or a wikipedia article.
I just googled WoTB's engine and couldn't find any other info
SteamDB links
https://steamdb.info/app/444200/
Possible way to detect it
No response

world of tanks blitz has dvpl files, maybe thats the way to detect it, even tho those files are used by most of wargaming games (https://fileinfo.com/extension/dvpl)

from what i see other wargaming games do not have dvpl files :skull:


Fix a DCOS upgrade test case when ~/.azure/config exists

make test failed for me locally. This was due to new behavior in #3519 that makes acs-engine look for a subscription ID in the local az CLI config. The one test spec that explicitly wants to use subscriptionID 00000000-0000-0000-0000-000000000000 to produce a "no subscription ID" error is no longer able to if ~/.azure/config exists.
This change passed CI and made it into master presumably because no ~/.azure directory exists on the CircleCI agents.
I added a hack to unset the HOME environment variable for this test case, which defeats the logic trying to look up the CLI's subscription ID so things work as before. This works but is ugly; I'd love to hear other suggestions.

@jackfrancis the lookup of ~/.azure/config is done in our own code, not using the az CLI, so unsetting AZURE_CONFIG_DIR won't work unfortunately.

/lgtm, thanks for looking for an alternate hack!


Store sidebar toggle choice for homepage across weeks and other pages

Resolves #117

Pull Request Test Coverage Report for Build 2195

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 96.095%

Totals

Change from base Build 2193:
0.0%

Covered Lines:
566

Relevant Lines:
589

💛  - Coveralls


Personal Issue with applying posts to my blog

Hello,
Could you be able to assist me what I have done wrong?
The posts that I have committed (attached the image below) do not apply to my blog.
It worked fine when I uploaded posts from the office in my company.
But, it does not seem to work now when I am working at home with my laptop.
I re-cloned the repository using Github Desktop and uploaded two posts under _posts folder.
As you can see, I uploaded two posts below. But, they are not applied to  my blog.

Instead, there is a post that I have never written, which is written in 9 Sep 2017 like below image.
I have been trying so hard to find what the problem is, but i really cannot find it.

My Blog: http://jaybdev.net

My forked github: https://github.com/jaybkim1/jaybkim1.github.io

Oops... I somehow fixed it.
It seems like the problem was about the 'master' branch.


[FEATURE REQ] Support for customizing load process of SecretProperties

Azure.Extensions.AspNetCore.Configuration.Secrets
Currently, when using the AzureKeyVaultConfigurationProvider, it always loads all secrets from the Azure Key Vault.
Sometimes, multiple services are using the same Azure Key Vault and only one secret is needed.
By allowing to customize the loading process for the secrets properties, it's possible to load only a specific secret or a subset of secrets. In conjunction with JsonKeyVaultSecretManager is very easy to have one secret with JSON document, where all secrets for a particular service are stored.

This seems like a perfect use case for AppService secret references: https://docs.microsoft.com/en-us/samples/azure/azure-sdk-for-net/app-secrets-configuration/?tabs=visualstudio

This seems like a perfect use case for AppConfig secret references: https://docs.microsoft.com/en-us/samples/azure/azure-sdk-for-net/app-secrets-configuration/?tabs=visualstudio

Yes, it's would be an option. But we would need change all our services on how they load secrets and settings. Changing all CI/CD pipelines on how they provide app settings and secrets and buy App Configuration Service.
I went through the docs and looks promising, but it would be longer journey for us.
This small extension would already help us a lot.

Just something off topic: this extension can also be used in Function Apps, but are in the AspNetCore namespace.
Is this intensional?

Yes, the desire was to unify the naming schema for extension packages. So we went with Azure.AspNetCore even though some apply to more app models.


Improves the performance of run resuming

When runs resume, we try and make sure that tasks that have already been completed are cached and reused. Worst case scenario the client needs to hit the API server once for a non-cached task that is indeed completed on the server, but this can get pretty expensive when there are a larger number of tasks.
 This allows us to progressively fetch additional tasks to be cached on the client, which will cut down on cache misses by a decent amount.

I'm also introducing in this PR a new way to do API versioning, using the Trigger-Version header, see here for the client side handling of this:
https://github.com/triggerdotdev/trigger.dev/blob/a9118be1a1d65d9ae94e1c6c9610db914a6311fd/packages/trigger-sdk/src/apiClient.ts#L111
And here for the server side:
https://github.com/triggerdotdev/trigger.dev/blob/a9118be1a1d65d9ae94e1c6c9610db914a6311fd/apps/webapp/app/routes/api.v1.runs.%24runId.tasks.ts#L88
This allows the client to be backwards (old clients work with new version of API) and forwards (new clients working with old versions of the API) compatible.
Oh yea, I also added a new function on IO called io.yield() which allows you to yield execution of the current run and resume it in a new function execution. Similar to io.wait() but does not create a task and resumes execution immediately.
✅ Checklist

[ ] I have followed every step in the contributing guide
[x] The PR title follows the convention.
[ ] I ran and tested the code works

Testing
I've been testing this using the stressTest in job-catalog, but more testing will need to take place before this goes live.

I've now tested the new client with an older version of the platform and made changes to yield to improve backwards compat with older versions of the Trigger.dev server.


[NSE-183] add Timestamp in native side

What changes were proposed in this pull request?
This pr adds Timestamp in native side.
fixed: https://github.com/oap-project/native-sql-engine/issues/183
How was this patch tested?
needs test

@xuechendi @JkSelf hi, I add timestamp in this pr, could you help take a review?


Enhancement of About Us

Improvement of UI of About us

Hello sir,Plese assign this project issuse to me


add snapshot rollback test in e2e test

What this PR does / why we need it:
add snapshot rollback test in e2e test
Special notes for your reviewer:
Does this PR introduce a user-facing change?

Codecov Report

Merging #1114 (37be071) into main (cd63a8a) will decrease coverage by 0.79%.
Report is 4 commits behind head on main.
The diff coverage is 35.09%.

:exclamation: Your organization is not using the GitHub App Integration. As a result you may experience degraded service beginning May 15th. Please install the GitHub App Integration for your organization. Read more.
@@            Coverage Diff             @@
##             main    #1114      +/-   ##
==========================================
- Coverage   40.75%   39.96%   -0.79%
==========================================
  Files          24       25       +1
  Lines        1644     1909     +265
==========================================
+ Hits          670      763      +93
- Misses        902     1045     +143
- Partials       72      101      +29

Files Changed
Coverage Δ

pkg/local-disk-action-controller/controller.go
35.09% <35.09%> (ø)

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


Feature proposal: Include the original commit message in the release commit message

As of now, whenever kuberpult releases (or deployes) something, the commit it creates is of the form:
released version 123 of "my-service"
deployed version 123 of "my-service" to "development"

I would really like to see the commit message of the release 123 of my-service. This would e.g. make it easier to see in argocd what the last commit really did for this service.
The commit message is already store here:
applications/my-service/releases/123/source_message

I like the idea. I think this is actually very easy to achieve: https://github.com/freiheit-com/kuberpult/pull/55

ohhh, you are talking about the commit message, not the hash. Yeah, I think we can do that too, just need to shorten it if it's long.

Sounds good. But what are you going to do if you deploy two services?