Dcoument the technical side of the project

Document the logic and architecture of the project from the technical side.

Duplicate of #48


[stable/nfs-provisioner]: Add nfs-provisioner chart

Adds a new chart to deploy the kubernetes-incubator nfs-provisioner
using a StatefulSet. Additionally, it requested, will define the
necessary StorageClass resource needed to make use of the provisioner.
See https://github.com/kubernetes-incubator/external-storage/tree/master/nfs

Looks like CI wants a NOTES.txt - I'll write one up.

There's another similar PR: #2559
Just wanted to let you know. I didn't really compare them. Does it make sense to have both?

/ok-to-test

There's another similar PR: #2559
Just wanted to let you know. I didn't really compare them. Does it make sense to have both?

Ah - @unguiculus - I didn't see that one :( There are some differences between the two e.g.:

This PR uses a StatefulSet instead of a Deployment. For this particular workload, a StatefulSet is technically more correct.
This PR is based on https://github.com/kubernetes-incubator/external-storage/tree/master/nfs - the kubernetes-incubator project.
#2559 seems to be based on https://github.com/kingdonb/nfs-data instead

Looking at #2559 a little more - it seems the intent is actually quite different. #2559 has this in it's readme:

If you are used to creating PVCs that automatically generate PVs, note that you
must create both PV and PVC as the consumer of the NFS PV Provisioner service.

That's different to this service. https://github.com/kubernetes-incubator/external-storage/tree/master/nfs is defined to act as a dynamic volume provisioner, creating NFS volumes automatically based on the requests of a PVC.

@unguiculus I think this should be OK to review again - see #4142 for some discussion re the differences between the 3x different NFS charts...

Thanks @prydonius - are we looking for a second approval before un-holding? :)

@kiall sounds like there was no objection on the other thread so I think we can go ahead and merge this! Thanks for the great work on this!
/hold cancel


Accounts                                                                                Accounts?                      @relation(fields: [AccountID_FK], references: [AccountID_PK])
  Entities                                                                                Entities?                      @relation(fields: [AccountUserID_FK], references: [EntityID_PK])
  Categories                                                                                Categories?                    @relation(fields: [CategoryID_FK], references: [CategoryID_PK])
  Flags                                                                                Flags?                         @relation(fields: [FlagID_FK], references: [FlagID_PK])
  GoalAccountDetails_GoalAccountDetailsToScheduledTransactions_GoalAccountDetailsID_UK_FK                               GoalAccountDetails?            @relation("GoalAccountDetailsToScheduledTransactions_GoalAccountDetailsID_UK_FK", fields: [GoalAccountDetailsID_UK_FK], references: [GoalAccountDetailsID_PK], onDelete: Cascade)
  InvestmentTransactionDetails_InvestmentTransactionDetailsToScheduledTransactions_InvestmentTransactionDetailsID_UK_FK InvestmentTransactionDetails?  @relation("InvestmentTransactionDetailsToScheduledTransactions_InvestmentTransactionDetailsID_UK_FK", fields: [InvestmentTransactionDetailsID_UK_FK], references: [InvestmentTransactionDetailsID_PK])
  LoanAccountDetails_LoanAccountDetailsToScheduledTransactions_LoanAccountDetailsID_UK_FK                               LoanAccountDetails?            @relation("LoanAccountDetailsToScheduledTransactions_LoanAccountDetailsID_UK_FK", fields: [LoanAccountDetailsID_UK_FK], references: [LoanAccountDetailsID_PK], onDelete: Cascade)
  LoanTransactionDetails_LoanTransactionDetailsToScheduledTransactions_LoanTransactionDetailsID_UK_FK                   LoanTransactionDetails?        @relation("LoanTransactionDetailsToScheduledTransactions_LoanTransactionDetailsID_UK_FK", fields: [LoanTransactionDetailsID_UK_FK], references: [LoanTransactionDetailsID_PK])
  ScheduledTransactions                                                                                ScheduledTransactions?         @relation("ScheduledTransactionsToScheduledTransactions_ParentID_FK", fields: [ParentID_FK], references: [ScheduledTransactionID_PK], onDelete: Cascade)
  Payees                                                                                Payees?                        @relation(fields: [PayeeID_FK], references: [PayeeID_PK])
  TransactionTypes                                                                                TransactionTypes?              @relation(fields: [TransactionTypeID_FK], references: [TransactionTypeID_PK])
  Attachments                                                                                Attachments[]
  BudgetsScheduledTransactions                                                                                BudgetsScheduledTransactions[]
  GoalAccountDetails_GoalAccountDetails_ScheduledTransactionID_UK_FKToScheduledTransactions                             GoalAccountDetails?            @relation("GoalAccountDetails_ScheduledTransactionID_UK_FKToScheduledTransactions")
  InvestmentTransactionDetails_InvestmentTransactionDetails_ScheduledTransactionID_UK_FKToScheduledTransactions         InvestmentTransactionDetails?  @relation("InvestmentTransactionDetails_ScheduledTransactionID_UK_FKToScheduledTransactions")
  LoanAccountDetails_LoanAccountDetails_ScheduledTransactionID_UK_FKToScheduledTransactions                             LoanAccountDetails?            @relation("LoanAccountDetails_ScheduledTransactionID_UK_FKToScheduledTransactions")
  LoanTransactionDetails_LoanTransactionDetails_ScheduledTransactionID_UK_FKToScheduledTransactions                     LoanTransactionDetails?        @relation("LoanTransactionDetails_ScheduledTransactionID_UK_FKToScheduledTransactions")
  Notes                                                                                Notes[]
  ReportsScheduledTransactions                                                                                ReportsScheduledTransactions[]
  other_ScheduledTransactions                                                                                ScheduledTransactions[]        @relation("ScheduledTransactionsToScheduledTransactions_ParentID_FK")
  ScheduledTransactionsTags                                                                                ScheduledTransactionsTags[]
  Transactions                                                                                Transactions[]
}

model ScheduledTransactionsTags {
  ScheduledTransactionID_NN_FK String
  TagID_NN_FK                  String
  ScheduledTransactions        ScheduledTransactions @relation(fields: [ScheduledTransactionID_NN_FK], references: [ScheduledTransactionID_PK], onDelete: Cascade)
  Tags                         Tags                  @relation(fields: [TagID_NN_FK], references: [TagID_PK], onDelete: Cascade)

  @@id([ScheduledTransactionID_NN_FK, TagID_NN_FK])
}

model Securities {
  SecurityID_PK                                      String                           @id
  SecurityTypeID_NN_FK                               String
  UnderlyingSecurityID_FK                            String?
  AccountID_UK_FK                                    String?                          @unique(map: "sqlite_autoindex_Securities_2")
  SecurityGroupID_FK                                 String?
  SecurityGoalID_FK                                  String?
  SecurityExchangeID_FK                              String?
  SecurityFundCategoryID_FK                          String?
  SecurityFundFamilyID_FK                            String?
  SecurityCustomLabelID_FK                           String?
  WebsiteID_UK_FK                                    String?                          @unique(map: "sqlite_autoindex_Securities_3")
  Position                                           Int?
  BehaviorTypeNumber                                 Int?
  CurrencyCode                                       String?
  IncludeInLists                                     Int?
  IncludeInReports                                   Int?
  IncludeInWatchList                                 Int?
  Favorite                                           Int?
  Name                                               String?
  ShortName                                          String?
  Info                                               String?
  ColorString                                        String?
  AlternateColorString                               String?
  TintColorString                                    String?
  AlternateTintColorString                           String?
  ImageData                                          Bytes?
  AlternateImageData                                 Bytes?
  IdentifierTypeNumber                               Int?
  Identifier                                         String?
  Symbol                                             String?
  DataSourceTypeNumber                               Int?
  DataSourceIdentifier                               String?
  YahooSymbol                                        String?
  GoogleSymbol                                       String?
  MorningstarSymbol                                  String?
  OtherWebsite1Symbol                                String?
  OtherWebsite2Symbol                                String?
  TaxFree                                            Int?
  DefaultLotTrackingTypeNumber                       Int?
  MinimumFractionDigits                              Int?
  MaximumFractionDigits                              Int?
  UnitPrice                                          Float?
  UnitPriceAsOfDate                                  Float?
  PreviousUnitPrice                                  Float?
  ChangeInUnitPrice                                  Float?
  PercentChangeInUnitPrice                           Float?
  LowAlertUnitPricePoint                             Float?
  HighAlertUnitPricePoint                            Float?
  ImportUnitPrice                                    Int?
  ImportOtherInfo                                    Int?
  ImportHistoricalPrices                             Int?
  DownloadUnitPrice                                  Int?
  DownloadOtherInfo                                  Int?
  DownloadHistoricalPrices                           Int?
  LastUnitPriceDownloadDate                          Float?
  LastOtherInfoDownloadDate                          Float?
  LastHistoricalPriceDownloadDate                    Float?
  DateOfMostRecentDownloadedHistoricalQuote          Float?
  AdjustedCloseOfMostRecentDownloadedHistoricalQuote Float?
  Open                                               Float?
  Bid                                                Float?
  BidSize                                            Float?
  Ask                                                Float?
  AskSize                                            Float?
  DaysLow                                            Float?
  DaysHigh                                           Float?
  FiftyTwoWeekLow                                    Float?
  FiftyTwoWeekHigh                                   Float?
  Volume                                             Float?
  AverageVolume                                      Float?
  MarketCapTypeNumber                                Int?
  MarketCap                                          Float?
  Dividend                                           Float?
  DividendYield                                      Float?
  PriceEarningsRatio                                 Float?
  OneYearForwardPriceEarningsRatio                   Float?
  EarningsPerShare                                   Float?
  OneYearTargetEstimate                              Float?
  PriceShareRatio                                    Float?
  PriceBookRatio                                     Float?
  PegFiveYearExpected                                Float?
  TotalExpenseRatio                                  Float?
  LongTermDebtEquityRatio                            Float?
  PriceFreeCashFlowRatio                             Float?
  NetProfitMargin                                    Float?
  ReturnOnEquity                                     Float?
  YearToDateReturn                                   Float?
  ThreeYearAverageReturn                             Float?
  FiveYearAverageReturn                              Float?
  Beta1Year                                          Float?
  Beta2Year                                          Float?
  Beta3Year                                          Float?
  Beta5Year                                          Float?
  FiftyDayMovingAverage                              Float?
  TwoHundredDayMovingAverage                         Float?
  ExpectedReturn                                     Float?
  StandardDeviation                                  Float?
  InceptionDate                                      Float?
  NetAssets                                          Float?
  NetAssetValue                                      Float?
  TurnoverRatio                                      Float?
  BackLoad                                           Float?
  FundRatingTypeNumber                               Int?
  FundRiskRatingTypeNumber                           Int?
  RankInCategory                                     Float?
  PercentRankInCategory                              Float?
  IssueDate                                          Float?
  MaturityDate                                       Float?
  ParValue                                           Float?
  BondIssuerTypeNumber                               Int?
  BondPayoutTypeNumber                               Int?
  CouponRate                                         Float?
  CouponFrequencyTypeNumber                          Int?
  CallDate                                           Float?
  CallTypeNumber                                     Int?
  CallUnitPrice                                      Float?
  CurrentYield                                       Float?
  YieldToCall                                        Float?
  YieldToMaturity                                    Float?
  BondRatingTypeNumber                               Int?
  FloatingRateTypeNumber                             Int?
  FloatingRateSpread                                 Float?
  OriginalPrincipalAmount                            Float?
  InflationIndexRatio                                Float?
  CurrentPoolFactor                                  Float?
  OptionTypeNumber                                   Int?
  OptionStyleNumber                                  Int?
  SharesPerContract                                  Float?
  ExpirationDate                                     Float?
  Strike                                             Float?
  ContractLow                                        Float?
  ContractHigh                                       Float?
  OpenInterest                                       Float?
  MiscValues                                         Bytes?

  SecurityAssetClasses       SecurityAssetClasses @relation(fields: [SecurityAssetClassID_NN_FK], references: [SecurityAssetClassID_PK], onDelete: Cascade)
  Securities                 Securities           @relation(fields: [SecurityID_NN_FK], references: [SecurityID_PK], onDelete: Cascade)

  @@id([SecurityID_NN_FK, SecurityAssetClassID_NN_FK])
}

model SecuritiesIndustries {
  SecurityID_NN_FK         String
  SecurityIndustryID_NN_FK String
  Percent                  Float?
  Securities               Securities         @relation(fields: [SecurityID_NN_FK], references: [SecurityID_PK], onDelete: Cascade)
  SecurityIndustries       SecurityIndustries @relation(fields: [SecurityIndustryID_NN_FK], references: [SecurityIndustryID_PK], onDelete: Cascade)

  @@id([SecurityID_NN_FK, SecurityIndustryID_NN_FK])
}

model SecurityAssetClasses {
  SecurityAssetClassID_PK                  String                                     @id
  ParentID_FK                              String?
  Position                                 Int?
  TypeNumber                               Int?
  IncludeInLists                           Int?
  IncludeInReports                         Int?
  Favorite                                 Int?
  Name                                     String?
  ShortName                                String?
  Info                                     String?
  ColorString                              String?
  AlternateColorString                     String?
  TintColorString                          String?
  AlternateTintColorString                 String?
  ImageData                                Bytes?
  AlternateImageData                       Bytes?
  SecurityAssetClasses                     SecurityAssetClasses?                      @relation("SecurityAssetClassesToSecurityAssetClasses_ParentID_FK", fields: [ParentID_FK], references: [SecurityAssetClassID_PK], onDelete: Cascade)
  Attachments                              Attachments[]
  InvestmentPortfoliosSecurityAssetClasses InvestmentPortfoliosSecurityAssetClasses[]
  Notes                                    Notes[]
  ReportForecastDetails                    ReportForecastDetails[]
  ReportGoalDetails                        ReportGoalDetails[]
  ReportsSecurityAssetClasses              ReportsSecurityAssetClasses[]
  SecuritiesAssetClasses                   SecuritiesAssetClasses[]
  other_SecurityAssetClasses               SecurityAssetClasses[]                     @relation("SecurityAssetClassesToSecurityAssetClasses_ParentID_FK")
}

model SecurityCustomLabels {
  SecurityCustomLabelID_PK                 String                                     @id
  ParentID_FK                              String?
  Position                                 Int?
  TypeNumber                               Int?
  IncludeInLists                           Int?
  IncludeInReports                         Int?
  Favorite                                 Int?
  Name                                     String?
  ShortName                                String?
  Info                                     String?
  ColorString                              String?
  AlternateColorString                     String?
  TintColorString                          String?
  AlternateTintColorString                 String?
  ImageData                                Bytes?
  AlternateImageData                       Bytes?
  SecurityCustomLabels                     SecurityCustomLabels?                      @relation("SecurityCustomLabelsToSecurityCustomLabels_ParentID_FK", fields: [ParentID_FK], references: [SecurityCustomLabelID_PK], onDelete: Cascade)
  Attachments                              Attachments[]
  InvestmentPortfoliosSecurityCustomLabels InvestmentPortfoliosSecurityCustomLabels[]
  Notes                                    Notes[]
  ReportForecastDetails                    ReportForecastDetails[]
  ReportGoalDetails                        ReportGoalDetails[]
  ReportsSecurityCustomLabels              ReportsSecurityCustomLabels[]
  Securities                               Securities[]
  other_SecurityCustomLabels               SecurityCustomLabels[]                     @relation("SecurityCustomLabelsToSecurityCustomLabels_ParentID_FK")
}

model SecurityExchanges {
  SecurityExchangeID_PK                 String                                  @id
  Position                              Int?
  TypeNumber                            Int?
  CurrencyCode                          String?
  IncludeInLists                        Int?
  IncludeInReports                      Int?
  Favorite                              Int?
  Name                                  String?
  ShortName                             String?
  Info                                  String?
  ColorString                           String?
  AlternateColorString                  String?
  TintColorString                       String?
  AlternateTintColorString              String?
  ImageData                             Bytes?
  AlternateImageData                    Bytes?
  CountryCode                           String?
  TimeZoneName                          String?
  OpeningBellHour                       Int?
  OpeningBellMinute                     Int?
  ClosingBellHour                       Int?
  ClosingBellMinute                     Int?
  Attachments                           Attachments[]
  InvestmentPortfoliosSecurityExchanges InvestmentPortfoliosSecurityExchanges[]
  Notes                                 Notes[]
  ReportForecastDetails                 ReportForecastDetails[]
  ReportGoalDetails                     ReportGoalDetails[]
  ReportsSecurityExchanges              ReportsSecurityExchanges[]
  Securities                            Securities[]
}

model SecurityFundFamilies {
  SecurityFundFamilyID_PK                  String                                     @id
  Position                                 Int?
  TypeNumber                               Int?
  IncludeInLists                           Int?
  IncludeInReports                         Int?
  Favorite                                 Int?
  Name                                     String?
  ShortName                                String?
  Info                                     String?
  ColorString                              String?
  AlternateColorString                     String?
  TintColorString                          String?
  AlternateTintColorString                 String?
  ImageData                                Bytes?
  AlternateImageData                       Bytes?
  Attachments                              Attachments[]
  InvestmentPortfoliosSecurityFundFamilies InvestmentPortfoliosSecurityFundFamilies[]
  Notes                                    Notes[]
  ReportForecastDetails                    ReportForecastDetails[]
  ReportGoalDetails                        ReportGoalDetails[]
  ReportsSecurityFundFamilies              ReportsSecurityFundFamilies[]
  Securities                               Securities[]
}

model SecurityGoals {
  SecurityGoalID_PK                 String                              @id
  ParentID_FK                       String?
  Position                          Int?
  TypeNumber                        Int?
  IncludeInLists                    Int?
  IncludeInReports                  Int?
  Favorite                          Int?
  Name                              String?
  ShortName                         String?
  Info                              String?
  ColorString                       String?
  AlternateColorString              String?
  TintColorString                   String?
  AlternateTintColorString          String?
  ImageData                         Bytes?
  AlternateImageData                Bytes?
  SecurityGoals                     SecurityGoals?                      @relation("SecurityGoalsToSecurityGoals_ParentID_FK", fields: [ParentID_FK], references: [SecurityGoalID_PK], onDelete: Cascade)
  Attachments                       Attachments[]
  InvestmentPortfoliosSecurityGoals InvestmentPortfoliosSecurityGoals[]
  Notes                             Notes[]
  ReportForecastDetails             ReportForecastDetails[]
  ReportGoalDetails                 ReportGoalDetails[]
  ReportsSecurityGoals              ReportsSecurityGoals[]
  Securities                        Securities[]
  other_SecurityGoals               SecurityGoals[]                     @relation("SecurityGoalsToSecurityGoals_ParentID_FK")
}

model SecurityGroups {
  SecurityGroupID_PK                 String                               @id
  ParentID_FK                        String?
  Position                           Int?
  TypeNumber                         Int?
  IncludeInLists                     Int?
  IncludeInReports                   Int?
  Favorite                           Int?
  Name                               String?
  ShortName                          String?
  Info                               String?
  ColorString                        String?
  AlternateColorString               String?
  TintColorString                    String?
  AlternateTintColorString           String?
  ImageData                          Bytes?
  AlternateImageData                 Bytes?
  SecurityGroups                     SecurityGroups?                      @relation("SecurityGroupsToSecurityGroups_ParentID_FK", fields: [ParentID_FK], references: [SecurityGroupID_PK], onDelete: Cascade)
  Attachments                        Attachments[]
  InvestmentPortfoliosSecurityGroups InvestmentPortfoliosSecurityGroups[]
  Notes                              Notes[]
  ReportForecastDetails              ReportForecastDetails[]
  ReportGoalDetails                  ReportGoalDetails[]
  ReportsSecurityGroups              ReportsSecurityGroups[]
  Securities                         Securities[]
  other_SecurityGroups               SecurityGroups[]                     @relation("SecurityGroupsToSecurityGroups_ParentID_FK")
}

model SecurityIndustries {
  SecurityIndustryID_PK                  String                                   @id
  SecuritySectorID_NN_FK                 String
  Position                               Int?
  TypeNumber                             Int?
  IncludeInLists                         Int?
  IncludeInReports                       Int?
  Favorite                               Int?
  Name                                   String?
  ShortName                              String?
  Info                                   String?
  ColorString                            String?
  AlternateColorString                   String?
  TintColorString                        String?
  AlternateTintColorString               String?
  ImageData                              Bytes?
  AlternateImageData                     Bytes?
  YahooSymbol                            String?
  OtherWebsite1Symbol                    String?
  OtherWebsite2Symbol                    String?
  PercentChangeInUnitPrice               Float?
  MarketCap                              Float?
  DividendYield                          Float?
  PriceEarningsRatio                     Float?
  PriceBookRatio                         Float?
  LongTermDebtEquityRatio                Float?
  PriceFreeCashFlowRatio                 Float?
  NetProfitMargin                        Float?
  ReturnOnEquity                         Float?
  SecuritySectors                        SecuritySectors                          @relation(fields: [SecuritySectorID_NN_FK], references: [SecuritySectorID_PK], onDelete: Cascade)
  Attachments                            Attachments[]
  InvestmentPortfoliosSecurityIndustries InvestmentPortfoliosSecurityIndustries[]
  Notes                                  Notes[]
  ReportForecastDetails                  ReportForecastDetails[]
  ReportGoalDetails                      ReportGoalDetails[]
  ReportsSecurityIndustries              ReportsSecurityIndustries[]
  SecuritiesIndustries                   SecuritiesIndustries[]
}

model SecuritySectors {
  SecuritySectorID_PK                 String                                @id
  Position                            Int?
  TypeNumber                          Int?
  IncludeInLists                      Int?
  IncludeInReports                    Int?
  Favorite                            Int?
  Name                                String?
  ShortName                           String?
  Info                                String?
  ColorString                         String?
  AlternateColorString                String?
  TintColorString                     String?
  AlternateTintColorString            String?
  ImageData                           Bytes?
  AlternateImageData                  Bytes?
  YahooSymbol                         String?
  OtherWebsite1Symbol                 String?
  OtherWebsite2Symbol                 String?
  PercentChangeInUnitPrice            Float?
  MarketCap                           Float?
  DividendYield                       Float?
  PriceEarningsRatio                  Float?
  PriceBookRatio                      Float?
  LongTermDebtEquityRatio             Float?
  PriceFreeCashFlowRatio              Float?
  NetProfitMargin                     Float?
  ReturnOnEquity                      Float?
  Attachments                         Attachments[]
  InvestmentPortfoliosSecuritySectors InvestmentPortfoliosSecuritySectors[]
  Notes                               Notes[]
  ReportForecastDetails               ReportForecastDetails[]
  ReportGoalDetails                   ReportGoalDetails[]
  ReportsSecuritySectors              ReportsSecuritySectors[]
  SecurityIndustries                  SecurityIndustries[]
}

model SecurityTypes {
  SecurityTypeID_PK                 String                              @id
  ParentID_FK                       String?
  Position                          Int?
  TypeNumber                        Int?
  IncludeInLists                    Int?
  IncludeInReports                  Int?
  Favorite                          Int?
  Name                              String?
  ShortName                         String?
  Info                              String?
  ColorString                       String?
  AlternateColorString              String?
  TintColorString                   String?
  AlternateTintColorString          String?
  ImageData                         Bytes?
  AlternateImageData                Bytes?
  SecurityTypes                     SecurityTypes?                      @relation("SecurityTypesToSecurityTypes_ParentID_FK", fields: [ParentID_FK], references: [SecurityTypeID_PK], onDelete: Cascade)
  InvestmentPortfoliosSecurityTypes InvestmentPortfoliosSecurityTypes[]
  ReportForecastDetails             ReportForecastDetails[]
  ReportGoalDetails                 ReportGoalDetails[]
  ReportsSecurityTypes              ReportsSecurityTypes[]
  Securities                        Securities[]
  other_SecurityTypes               SecurityTypes[]                     @relation("SecurityTypesToSecurityTypes_ParentID_FK")
}

model Statements {
  StatementID_PK                                String         @id
  AccountID_NN_FK                               String
  ImportID_UK_FK                                String?        @unique(map: "sqlite_autoindex_Statements_2")
  ReconcileTypeNumber                           Int?
  StatusNumber                                  Int?
  Name                                          String?
  ShortName                                     String?
  Info                                          String?
  Date                                          Float?
  Balance                                       Float?
  StartDate                                     Float?
  EndDate                                       Float?
  StartingBalance                               Float?
  EndingBalance                                 Float?
  Accounts                                      Accounts       @relation(fields: [AccountID_NN_FK], references: [AccountID_PK], onDelete: Cascade)
  Imports_ImportsToStatements_ImportID_UK_FK    Imports?       @relation("ImportsToStatements_ImportID_UK_FK", fields: [ImportID_UK_FK], references: [ImportID_PK])
  Attachments                                   Attachments[]
  Imports_Imports_StatementID_UK_FKToStatements Imports?       @relation("Imports_StatementID_UK_FKToStatements")
  Notes                                         Notes[]
  Transactions                                  Transactions[]
}

model Tags {
  TagID_PK                        String                            @id
  ParentID_FK                     String?
  Position                        Int?
  TypeNumber                      Int?
  IncludeInLists                  Int?
  IncludeInReports                Int?
  Favorite                        Int?
  TaxCopyNumber                   Int?
  Name                            String?
  ShortName                       String?
  Info                            String?
  ColorString                     String?
  AlternateColorString            String?
  TintColorString                 String?
  AlternateTintColorString        String?
  ImageData                       Bytes?
  AlternateImageData              Bytes?
  Tags                            Tags?                             @relation("TagsToTags_ParentID_FK", fields: [ParentID_FK], references: [TagID_PK], onDelete: Cascade)
  AccountDefaultsTags             AccountDefaultsTags[]
  Attachments                     Attachments[]
  BudgetsTags                     BudgetsTags[]
  LoanTransactionDetailsTags      LoanTransactionDetailsTags[]
  Notes                           Notes[]
  ReportForecastDetails           ReportForecastDetails[]
  ReportGoalDetails               ReportGoalDetails[]
  ReportsTags                     ReportsTags[]
  ScheduledTransactionsTags       ScheduledTransactionsTags[]
  other_Tags                      Tags[]                            @relation("TagsToTags_ParentID_FK")
  TransactionRuleTransactionsTags TransactionRuleTransactionsTags[]
  TransactionsTags                TransactionsTags[]
}

model TaxCodes {
  TaxCodeID_PK  String       @id
  TypeNumber    Int?
  Code          String?
  Name          String?
  ShortName     String?
  Info          String?
  Copies        Int?
  MultiLineItem Int?
  Sorting       String?
  Sign          String?
  RecordFormat  String?
  Form          String?
  FormLine      String?
  Categories    Categories[]
}

model TransactionLogs {
  TransactionLogID_PK   String  @id
  Version_NN            String
  DeviceID_NN           String
  DeviceName            String?
  Number_NN             Int
  TimeStamp_NN          Float
  NumberOfObjectChanges Int?

  @@unique([DeviceID_NN, Number_NN, TimeStamp_NN], map: "sqlite_autoindex_TransactionLogs_3")
  @@unique([DeviceID_NN, Number_NN], map: "sqlite_autoindex_TransactionLogs_2")
}

model TransactionRuleTransactions {
  TransactionRuleTransactionID_PK                                                                                String                            @id
  ParentID_FK                                                                                String?
  Position                                                                                Int?
  TransactionRuleID_UK_FK                                                                                String?                           @unique(map: "sqlite_autoindex_TransactionRuleTransactions_2")
  AccountID_FK                                                                                String?
  AccountUserID_FK                                                                                String?
  FlagID_FK                                                                                String?
  PayeeID_FK                                                                                String?
  TransactionTypeID_FK                                                                                String?
  CategoryID_FK                                                                                String?
  InvestmentTransactionDetailsID_UK_FK                                                                                String?                           @unique(map: "sqlite_autoindex_TransactionRuleTransactions_3")
  Memo                                                                                String?
  CheckNumber                                                                                String?
  TransactionNumber                                                                                String?
  AmountTypeNumber                                                                                Int?
  Amount                                                                                Float?
  PercentAmount                                                                                Float?
  StatusNumber                                                                                Int?
  ClearAccount                                                                                Int?
  ClearAccountUser                                                                                Int?
  ClearFlag                                                                                Int?
  ClearPayee                                                                                Int?
  ClearTransactionType                                                                                Int?
  ClearCategory                                                                                Int?
  ClearTags                                                                                Int?
  ClearInvestmentTransactionDetails                                                                                Int?
  ClearSecurity                                                                                Int?
  ClearUnits                                                                                Int?
  ClearUnitPrice                                                                                Int?
  ClearCommission                                                                                Int?
  ClearMemo                                                                                Int?
  ClearCheckNumber                                                                                Int?
  ClearTransactionNumber                                                                                Int?
  ClearAmount                                                                                Int?
  ClearStatus                                                                                Int?
  Accounts                                                                                Accounts?                         @relation(fields: [AccountID_FK], references: [AccountID_PK])
  Entities                                                                                Entities?                         @relation(fields: [AccountUserID_FK], references: [EntityID_PK])
  Categories                                                                                Categories?                       @relation(fields: [CategoryID_FK], references: [CategoryID_PK])
  Flags                                                                                Flags?                            @relation(fields: [FlagID_FK], references: [FlagID_PK])
  InvestmentTransactionDetails_InvestmentTransactionDetailsToTransactionRuleTransactions_InvestmentTransactionDetailsID_UK_FK InvestmentTransactionDetails?     @relation("InvestmentTransactionDetailsToTransactionRuleTransactions_InvestmentTransactionDetailsID_UK_FK", fields: [InvestmentTransactionDetailsID_UK_FK], references: [InvestmentTransactionDetailsID_PK])
  TransactionRuleTransactions                                                                                TransactionRuleTransactions?      @relation("TransactionRuleTransactionsToTransactionRuleTransactions_ParentID_FK", fields: [ParentID_FK], references: [TransactionRuleTransactionID_PK], onDelete: Cascade)
  Payees                                                                                Payees?                           @relation(fields: [PayeeID_FK], references: [PayeeID_PK])
  TransactionRules_TransactionRuleTransactions_TransactionRuleID_UK_FKToTransactionRules                                      TransactionRules?                 @relation("TransactionRuleTransactions_TransactionRuleID_UK_FKToTransactionRules", fields: [TransactionRuleID_UK_FK], references: [TransactionRuleID_PK], onDelete: Cascade)
  TransactionTypes                                                                                TransactionTypes?                 @relation(fields: [TransactionTypeID_FK], references: [TransactionTypeID_PK])
  InvestmentTransactionDetails_InvestmentTransactionDetails_TransactionRuleTransactionID_UK_FKToTransactionRuleTransactions   InvestmentTransactionDetails?     @relation("InvestmentTransactionDetails_TransactionRuleTransactionID_UK_FKToTransactionRuleTransactions")
  other_TransactionRuleTransactions                                                                                TransactionRuleTransactions[]     @relation("TransactionRuleTransactionsToTransactionRuleTransactions_ParentID_FK")
  TransactionRuleTransactionsTags                                                                                TransactionRuleTransactionsTags[]
  TransactionRules_TransactionRuleTransactionsToTransactionRules_TransactionRuleTransactionID_NN_UK_FK                        TransactionRules?                 @relation("TransactionRuleTransactionsToTransactionRules_TransactionRuleTransactionID_NN_UK_FK")
}

model TransactionRuleTransactionsTags {
  TransactionRuleTransactionID_NN_FK String
  TagID_NN_FK                        String
  Tags                               Tags                        @relation(fields: [TagID_NN_FK], references: [TagID_PK], onDelete: Cascade)
  TransactionRuleTransactions        TransactionRuleTransactions @relation(fields: [TransactionRuleTransactionID_NN_FK], references: [TransactionRuleTransactionID_PK], onDelete: Cascade)

  @@id([TransactionRuleTransactionID_NN_FK, TagID_NN_FK])
}

model TransactionRules {
  TransactionRuleID_PK                                                                                String                       @id
  TransactionRuleTransactionID_NN_UK_FK                                                                           String                       @unique(map: "sqlite_autoindex_TransactionRules_2")
  PayeeID_UK_FK                                                                                String?                      @unique(map: "sqlite_autoindex_TransactionRules_3")
  Position                                                                                Int?
  TypeNumber                                                                                Int?
  ActivationTypeNumber                                                                                Int?
  UpdatingTypeNumber                                                                                Int?
  ApplicationTypeNumber                                                                                Int?
  PriorityTypeNumber                                                                                Int?
  Name                                                                                String?
  ShortName                                                                                String?
  Info                                                                                String?
  OverallParametersCombinationTypeNumber                                                                          Int?
  ObjectMatchesCombinationTypeNumber                                                                              Int?
  Payees_PayeesToTransactionRules_PayeeID_UK_FK                                                                   Payees?                      @relation("PayeesToTransactionRules_PayeeID_UK_FK", fields: [PayeeID_UK_FK], references: [PayeeID_PK], onDelete: Cascade)
  TransactionRuleTransactions_TransactionRuleTransactionsToTransactionRules_TransactionRuleTransactionID_NN_UK_FK TransactionRuleTransactions  @relation("TransactionRuleTransactionsToTransactionRules_TransactionRuleTransactionID_NN_UK_FK", fields: [TransactionRuleTransactionID_NN_UK_FK], references: [TransactionRuleTransactionID_PK], onDelete: Cascade)
  ObjectMatches                                                                                ObjectMatches[]
  Payees_Payees_TransactionRuleID_UK_FKToTransactionRules                                                         Payees?                      @relation("Payees_TransactionRuleID_UK_FKToTransactionRules")
  TransactionRuleTransactions_TransactionRuleTransactions_TransactionRuleID_UK_FKToTransactionRules               TransactionRuleTransactions? @relation("TransactionRuleTransactions_TransactionRuleID_UK_FKToTransactionRules")
}

model TransactionTypes {
  TransactionTypeID_PK        String                        @id
  TypeNumber                  Int?
  AmountRestrictionTypeNumber Int?
  SharesAffectTypeNumber      Int?
  IncludeInLists              Int?
  IncludeInReports            Int?
  Favorite                    Int?
  Name                        String?
  ShortName                   String?
  Info                        String?
  ColorString                 String?
  AlternateColorString        String?
  TintColorString             String?
  AlternateTintColorString    String?
  ImageData                   Bytes?
  AlternateImageData          Bytes?
  Accounts                    Accounts[]
  Attachments                 Attachments[]
  LoanTransactionDetails      LoanTransactionDetails[]
  Notes                       Notes[]
  ReportForecastDetails       ReportForecastDetails[]
  ReportGoalDetails           ReportGoalDetails[]
  ReportsTransactionTypes     ReportsTransactionTypes[]
  ScheduledTransactions       ScheduledTransactions[]
  TransactionRuleTransactions TransactionRuleTransactions[]
  Transactions                Transactions[]
}

model Transactions {
  TransactionID_PK                                                                                String                        @id
  ParentID_FK                                                                                String?
  Position                                                                                Int?
  AccountID_FK                                                                                String?
  AccountUserID_FK                                                                                String?
  FlagID_FK                                                                                String?
  PayeeID_FK                                                                                String?
  TransactionTypeID_FK                                                                                String?
  CategoryID_FK                                                                                String?
  InvestmentTransactionDetailsID_UK_FK                                                                         String?                       @unique(map: "sqlite_autoindex_Transactions_2")
  LoanTransactionDetailsID_UK_FK                                                                               String?                       @unique(map: "sqlite_autoindex_Transactions_3")
  LinkedTransferID_UK_FK                                                                                String?                       @unique(map: "sqlite_autoindex_Transactions_4")
  ScheduledTransactionID_FK                                                                                String?
  ImportedTransactionID_UK_FK                                                                                String?                       @unique(map: "sqlite_autoindex_Transactions_5")
  StatementID_FK                                                                                String?
  OriginNumber                                                                                Int?
  UniqueID                                                                                String?
  OriginalCurrencyCode                                                                                String?
  OriginalCurrencyRate                                                                                Float?
  CreationDate                                                                                Float?
  ModifiedDate                                                                                Float?
  Date                                                                                Float?
  ClearedDate                                                                                Float?
  Memo                                                                                String?
  CheckNumber                                                                                String?
  NeedToPrintCheck                                                                                Int?
  TransactionNumber                                                                                String?
  Amount                                                                                Float?
  AmountAppliedToBalance                                                                                Float?
  StatusNumber                                                                                Int?

  TypeNumber                                                 Int?
  Favorite                                                   Int?
  Name                                                       String?
  ShortName                                                  String?
  Info                                                       String?
  ColorString                                                String?
  AlternateColorString                                       String?
  TintColorString                                            String?
  AlternateTintColorString                                   String?
  ImageData                                                  Bytes?
  AlternateImageData                                         Bytes?
  URL                                                        String?
  AccountGroups_AccountGroupsToWebsites_AccountGroupID_UK_FK AccountGroups? @relation("AccountGroupsToWebsites_AccountGroupID_UK_FK", fields: [AccountGroupID_UK_FK], references: [AccountGroupID_PK], onDelete: Cascade)
  Accounts_AccountsToWebsites_AccountID_UK_FK                Accounts?      @relation("AccountsToWebsites_AccountID_UK_FK", fields: [AccountID_UK_FK], references: [AccountID_PK], onDelete: Cascade)
  Locations_LocationsToWebsites_LocationID_UK_FK             Locations?     @relation("LocationsToWebsites_LocationID_UK_FK", fields: [LocationID_UK_FK], references: [LocationID_PK], onDelete: Cascade)
  Payees_PayeesToWebsites_PayeeID_UK_FK                      Payees?        @relation("PayeesToWebsites_PayeeID_UK_FK", fields: [PayeeID_UK_FK], references: [PayeeID_PK], onDelete: Cascade)
  Securities_SecuritiesToWebsites_SecurityID_UK_FK           Securities?    @relation("SecuritiesToWebsites_SecurityID_UK_FK", fields: [SecurityID_UK_FK], references: [SecurityID_PK], onDelete: Cascade)
  AccountGroups_AccountGroups_WebsiteID_UK_FKToWebsites      AccountGroups? @relation("AccountGroups_WebsiteID_UK_FKToWebsites")
  Accounts_Accounts_WebsiteID_UK_FKToWebsites                Accounts?      @relation("Accounts_WebsiteID_UK_FKToWebsites")
  Locations_Locations_WebsiteID_UK_FKToWebsites              Locations?     @relation("Locations_WebsiteID_UK_FKToWebsites")
  Payees_Payees_WebsiteID_UK_FKToWebsites                    Payees?        @relation("Payees_WebsiteID_UK_FKToWebsites")
  Securities_Securities_WebsiteID_UK_FKToWebsites            Securities?    @relation("Securities_WebsiteID_UK_FKToWebsites")
}

model fundCategories {
  SecurityFundCategoryID_PK                  String                                       @id
  Position                                   Int?
  TypeNumber                                 Int?
  IncludeInLists                             Int?
  IncludeInReports                           Int?
  Favorite                                   Int?
  Name                                       String?
  ShortName                                  String?
  Info                                       String?
  ColorString                                String?
  AlternateColorString                       String?
  TintColorString                            String?
  AlternateTintColorString                   String?
  ImageData                                  Bytes?
  AlternateImageData                         Bytes?
  Attachments                                Attachments[]
  InvestmentPortfoliosSecurityFundCategories InvestmentPortfoliosSecurityFundCategories[]
  Notes                                      Notes[]
  ReportForecastDetails                      ReportForecastDetails[]
  ReportGoalDetails                          ReportGoalDetails[]
  ReportsSecurityFundCategories              ReportsSecurityFundCategories[]
  Securities                                 Securities[]
}

https://prisma-errors.netlify.app/report/13617 other occurrnce

There is another occurrence of potentially the same problem in https://github.com/prisma/prisma/issues/12613
Please confirm the above to be fixed when this is, or else reopen it.


feat/components/new-pricing-card

Looks good, few changes to make but it's a nice component! Thanks for adding.

Thanks for reviewing Mark. I made the changes.
All good now?

Hey @kad1kad thanks for doing these so quick, there's a few comments left to do that I've updated.
It might be worth overriding the spacing for this component in the cards.mdx file. Something like max-w-md mx-auto p-8 so it appears a little wider.

Hey @kad1kad thanks for doing these so quick, there's a few comments left to do that I've updated.
It might be worth overriding the spacing for this component in the cards.mdx file. Something like max-w-md mx-auto p-8 so it appears a little wider.

Cool, all done! Let me know what you think

Looks all good to me! @kad1kad I'll pull it down and make some content adjustments. Great work!


Correctly compute the base for computing the DITA file to be edited

In the case the website is deployed in a folder, for example on a staging server like http://infotexture.github.io/dita-ot.github.io/

Cherry-picked as 90db153185684a6dd3a32182007b2a4ca3844b8c


Allow admins to edit the Pledge Sent At and Fund Pledge at dates for backfilled patients

Thanks for creating an issue! Please fill out this form so we can be sure to have all the information we need, and to minimize back and forth.

What are we trying to do?
Make the Pledge Sent At and Fund Pledged At on the Data Entry tab editable

What feature or behavior is this required for?

Support accurate info for backfilled patient data
Avoiding backfilled data from showing in this weeks budget bar

How could we solve this issue? (Not knowing is okay!)

Anything else?
Requested by NOAF!

Thanks for this @lomky!
Assuming that most data entry vols enter data through the /data_entry route, it could be useful to have a field to enter the Pledge Sent date on that form instead/in addition.

@harumhelmy that is a great suggestion, and is actually much cleaner engineering as well! Pinging Elizabeth to see if that workflow fits for them.

Elizabeth says that'll work! Amazing catch :sparkles: :tada:


Umask not working

Justas reported on freshdesk ticket #65647. That the umasking feature it is not working:
[root@transfer-10 justas]# cat<EMAIL_ADDRESS>| grep UMask
UMask=0002
[root@transfer-10 justas]# cat /etc/xrootd/xrootd-clustered.cfg | grep umask
multiuser.umask 0002
Copy file
-bash-4.2$ gfal-copy -K ADLER32 -p -f justas root://transfer-10.ultralight.org//storage/justas/umask0002
Copying file:///storage/user/jbalcas/justas   [DONE]  after 0s
On storage:
[root@transfer-10 justas]# ll /storage/justas/
total 1
-rw-r--r-T 1 cmsuser cmsuser 6 Sep 28 16:14 umask0002
so umask is somehow not used. I also tried to change 0001, same effect. Do I miss something else to change?
[root@transfer-10 ~]# ll /storage/justas/
total 1
-rw-r--r-T 1 cmsuser cmsuser 6 Sep 28 16:32 umask0001
-rw-r--r-T 1 cmsuser cmsuser 6 Sep 28 16:14 umask0002

With the tracing on high enough, it should print out the umask it was going to use, as in this line:
https://github.com/opensciencegrid/xrootd-multiuser/blob/master/src/multiuser.cpp#L539
It looks like the umask only happens when it uses the default xrootd umask.  I suppose it's possible that gfal is doing something weird with setting the xrootd umask?  Could you try the same command with the raw xrdcp command?

Seems most of it works (and for my needs it is enough). Changing umask on xrootd server config and do transfer with gfal-copy:
[root@transfer-10 ~]# ll /storage/eck4m1/
total 8192
-rw-rw-r-- 1 cmsuser cmsuser 1048576 Oct 29 08:20 umask0001
-rw-rw-r-- 1 cmsuser cmsuser 1048576 Oct 29 08:20 umask0002
-rw-rw---- 1 cmsuser cmsuser 1048576 Oct 29 08:22 umask0006
-rw-rw---- 1 cmsuser cmsuser 1048576 Oct 29 08:22 umask0007
-rw-r----- 1 cmsuser cmsuser 1048576 Oct 29 08:23 umask0027
-rw------- 1 cmsuser cmsuser 1048576 Oct 29 08:24 umask0067
-rw----r-- 1 cmsuser cmsuser 1048576 Oct 29 08:27 umask0070
-rw------- 1 cmsuser cmsuser 1048576 Oct 29 08:25 umask0077

Also changing this at systemd Umask looks ok (while xrootd config is not setting it)
[root@transfer-10 eck4m1]# ll /storage/eck4m1/*service
-rw-rw-r-- 1 cmsuser cmsuser 1048576 Oct 29 08:44 /storage/eck4m1/umask0000-service
-rw-rw---- 1 cmsuser cmsuser 1048576 Oct 29 08:45 /storage/eck4m1/umask0007-service
-rw------- 1 cmsuser cmsuser 1048576 Oct 29 08:46 /storage/eck4m1/umask0077-service

Even I am still confused why if I use UMask 0000, it becomes 664 - but simply seems there is umask set somewhere else which takes precedence. I think it is good to close this issue (there is no real issue here).

I'm confused (though happy to close this issue).  You said at first it wasn't working, but now you are saying that the umask in the XRootD config does work?

In my first try, I tested only 002 and 001, but not other umasks, while in second I tried many other umasks. Based on every possible umask (https://www.linuxtrainingacademy.com/all-umasks/), I can only assume that xrootd is not changing (lowering) umask (default is 002) or is it Linux not doing this/not allowing? And because I tested in a first try only 002 and 001 - these two have no difference (as default is 002). All other work as it should.
001 - should be rw-rw-rw-, while xrootd sets rw-rw-r--
002 - should be rw-rw-r--, while xrootd sets rw-rw-r--
006 - should be rw-rw----, while xrootd sets  -rw-rw----
077 - should be rw------, while xrootd sets rw-------

Thanks Justas.


NIFI-4462 Update User and Admin Guide with Variables window UI docume…

…ntation and screenshots

Reviewing...

Thanks @andrewmlim this has been merged to master!


URLSession.dataSync(for request: URLRequest) throws -> (Data, URLResponse)

🚀
Hello.
Thank you for SwifterSwift.

Fix #1075.
Checklist

[x] I checked the Contributing Guidelines before creating this request.
[x] New extensions are written in Swift 5.0.
[x] New extensions support iOS 10.0+ / tvOS 9.0+ / macOS 10.10+ / watchOS 2.0+, or use @available if not.
[x] I have added tests for new extensions, and they passed.
[x] All extensions have a clear comments explaining their functionality, all parameters and return type in English.
[x] All extensions are declared as public.
[x] I have added a changelog entry describing my changes.

@RomanPodymov you still need to update README.md for the new extension

@RomanPodymov Can you please resolve the conflicts?


Add User mode multi-threaded stress tests

Description
This PR adds user mode stress tests to exercise ebpfcore.sys and netebpf.sys behavior under extreme multi-threaded
stress scenarios.  These tests are packaged in a standalone executable for two reasons:

Given the run-time vagaries of multi-threaded system behavior (varying core counts in server machines, load time of
a given test program, multi-threading limitations of the user mode mock components etc), the tests needed runtime control of these parameters to simulate various 'what-if' scenarios.   Aso, given the multi-threading limitations of the user mode 'mock' framework, these tests needed to be run in a restricted manner, independent of other tests that assume single-threaded execution.

For comprehensive multi-threaded testing, these tests typically exhibit long runtimes and adding these tests to the existing kernel and user-mode test suites prolonged their execution time considerably.  This is not desirable as it would in turn lead to much longer CI/CD passes for routine PR processing.

Open Issues:

The program's defaults can be set to get a quick'n'dirty pass over a PR and this can be sufficient for the normal PR validation CI/CD workflow.  For a more thorough and comprehensive MT stress testing though, we need to schedule periodic passes with far more stress inducing parameter values (including extended run times), for both debug and release binaries.  Can we extend our CI/CD workflow to perform this exhaustive pass as a nightly job?

This PR also proposes a modest update to our coding conventions wrt. native C++ code only.  Our current conventions require aggregate types (struct, class, enum) to be wrapped in suitable typedefs (with a _t' suffix).  While this is definitely desirable for C and C/C++ interoperable code, native C++ has built-in support for such aggregates and does not require the struct or class prefixes for subsequent use. This PR therefore introduces a C++ only convention that drops the typedef and the _t naming convention for such aggregates to be more in line with the accepted (and overwhelmingly preferred) C++ coding styles.  IMHO, build-in language features should be preferred wherever possible to ensure code is as 'language native' as possible.  I do get the 'consistency' aspect, but I'd argue that we're dealing with two different languages here.  To be clear, this is only applicable to new code and for struct, class, enum aggregates meant to be used entirely within native C++ code.  structs shared with C code will of course continue to use the 'typedef + _t suffix' convention.  OTOH, if the consensus is to maintain status quo, I can certainly revert the code to follow the existing conventions.

Finally, I'm already seeing these tests failing under increased load and most failures have to do with the attach_link call.  I'd really appreciate it if the eBPF veterans paid special attention to my attempts at making the code MT-safe (especially the handling of the 'mock' helper objects) and help me rule out false positives.

Testing
This is new test collateral.
Documentation
No documentation changes required.
Fixes #2099

How about there are separate queues of programs to be loaded, attached and detached. The queues would be serviced by a pool of threads. Once a program is loaded, it moves to the attach queue, and then the detach queue and finally back to the load queue. This way we can test the three operations from separate threads, instead of happening sequentially from a single thread. Please be mindful of the hooks that does not allow simultaneous attach of more than one programs. For user mode unit test, it does not matter; but it will matter when testing against netebpfext in kernel mode.

I like this enhancement.  Can we add it in a follow-up issue (To be started immediately)? I'm seeing bpf_xxx API failures even with the current 'sequential' mode (this is with  droppacket.o (XDP) which does allow simultaneous 'attach' by multiple programs) and IMO it would be worthwhile to be able to track these bugs as well.  Once this is merged, we can also enhance our CI/CD workflow to get this going on a 'nightly' schedule.
To reiterate my comments from our past meeting, this test is user mode only.  The kernel mode tests will be in a different test executable with tests that are aware of kernel mode restrictions (single program attach, valid interface and compartment ids etc).

Open Issues:

The program's defaults can be set to get a quick'n'dirty pass over a PR and this can be sufficient for the normal PR validation CI/CD workflow.  For a more thorough and comprehensive MT stress testing though, we need to schedule periodic passes with far more stress inducing parameter values (including extended run times), for both debug and release binaries.  Can we extend our CI/CD workflow to perform this exhaustive pass as a nightly job?

Testing
This is new test collateral.

Please update cicd.yml

Open Issues:

The program's defaults can be set to get a quick'n'dirty pass over a PR and this can be sufficient for the normal PR validation CI/CD workflow.  For a more thorough and comprehensive MT stress testing though, we need to schedule periodic passes with far more stress inducing parameter values (including extended run times), for both debug and release binaries.  Can we extend our CI/CD workflow to perform this exhaustive pass as a nightly job?

Testing
This is new test collateral.

Please update cicd.yml

Added a new scheduled task to do a nightly multi-threaded 'user mode' test pass (Have updated the PR description accordingly.


Field is never rebuilt

This seems related to the root cause of #217 - discovered while trying to use cast_value after updating constraints, but would apply to any update.

Should be fixed in https://github.com/frictionlessdata/tableschema-py/pull/231
Please re-open if it's not


typedef struct is not supported

In some case, we need to create more tests for this in struct.c

Could you clarify the code of file struct.c

Different between struct and typedef struct.
Let's take example:
#include <stdio.h>

typedef struct tag
{
    int    a;
    double z;
} strDef;

int main()
{
	{
    struct tag s; // <--- NEED WORD "struct"
    s.a = 12;
    s.z = 0.42;
    printf("%d   %f\n", s.a, s.z);
	}
	{
    strDef s;    //  <--- NO NEED WORD "struct"
    s.a = 12;
    s.z = 0.42;
    printf("%d   %f\n", s.a, s.z);
	}
}

For struct, we have to add struct for each variable.
For typedef struct we cannot add struct for variable.
Compare creating variables ast.DeclRefExpr for that 2 structures
struct:
&ast.DeclRefExpr{Address:"0x36c78f8", Position:"col:5", Type:"struct tag", Lvalue:true, For:"Var", Address2:"0x36c7880", Name:"s", Type2:"struct tag", Children:[]ast.Node{}}

For typedef struct:
&ast.DeclRefExpr{Address:"0x36c8de8", Position:"col:5", Type:"strDef", Lvalue:true, For:"Var", Address2:"0x36c8d70", Name:"s", Type2:"strDef", Children:[]ast.Node{}}

We see the different in value Type2 -  "struct tag" and "strDef".

Wrong casting.
// Tests for structures.

#include <stdio.h>
#include "tests.h"

typedef struct mainStruct{
	int constant;
} secondStruct;

int main()
{
    plan(2);

    struct mainStruct s1;
    s1.constant = 42;
    is_eq(s1.constant, 42.);

	secondStruct s2;
	s2.constant = 42;
	is_eq(s2.constant, 42.);

    done_testing();
}

After transpiling:
	s1.constant = 42
	if approx(float64((s1.constant)), (42)) != 0 {
		...
	}
	var s2 secondStruct
	s2.constant = 42
	if approx(noarch.ByteSliceToFloat64((s2.constant)), (42)) != 0 {
		...
	}

Exactly, can you put in a PR that passes the example code you just provided?

Now, It cannot be added, because typedef struct create a convertion type bug. So, if we add that test in project - we broke the integration test.
Now, it is not clear for me - "How to fix that".

I create a workaround for typedef like Transpiller feel typedef struct like a base struct.
Add test for that and now is Ok.


Fix typo in snapshot-path FAQ

Description & motivation
Fix seed >> snapshot typo
Pre-release docs
Is this change related to an unreleased version of dbt?

[ ] Yes: please update the base branch to next
[X] No: please ensure the base branch is current
[ ] Unsure: we'll let you know!

TY!


[Enhancement] Validation for Unreferenced Feedback of Programming Exercises

Checklist

[x] I tested all changes and all related features with different users (student, tutor, instructor, admin) on the test server https://artemistest.ase.in.tum.de.
[x] Client: I followed the coding and design guidelines.
[x] Client: I documented the TypeScript code using JSDoc style.
[x] Client: I added multiple screenshots/screencasts of my UI changes

Motivation and Context

We want to visualise that the unreferenced feedback should have a score and a detailed text. This is needed specially for programming exercises.
Description

Added required to <input> and <textarea> DOM elements
Changed the check when it is allowed to save/submit a assessment for programming exercises

Steps for Testing

Log in to Artemis
Navigate to Course Administration
Assess a programming exercise
3.1 Add a referenced (inline) feedback -> You should be able to submit/save (see if buttons are disabled). Delete this feedback afterwards
3.2 Add unreferenced feedback -> You should not be able to submit/save unless you entered a detail text and score. Delete this feedback afterwards
3.3 Add general feedback -> You should be able to submit/save.
3.4 Add a referenced (inline) feedback -> You should be able to submit/save.
3.5 Add unreferenced feedback -> You should not be able to submit/save unless you entered a detail text and score.
3.6 Add more unreferenced feedback -> You should not be able to submit/save unless you entered a detail text and score.

Test Coverage

Nothing changed.
Screenshots

Unreferenced feedback

The functionality works for me on test server 1 but not test server 3.
I see a lot of errors in the console on test server 1 and 3.
from test server 1:
ERROR v {headers: p, status: 200, statusText: "OK", url: "https://artemistest.ase.in.tum.de/time", ok: false, …}

I am not quite sure why it is printed so often on your console, but this is the 404 return for the submission-no-assessment call. We have this behavior also for the other exercise types and this is unrelated to this PR. :)

I merge, but please investigate the issues found by @tiffca in a follow up.
We should not have such typescript errors!

@fde312 I merge, but please investigate the issues found by @tiffca in a follow up.
We should not have such typescript errors!

@krusche This was already fixed in https://github.com/ls1intum/Artemis/commit/4316527ce70c487e9d9ef4dcf333d00ff3d961b3  There was a change in the /Time REST Call that was reverted


Update Remove-SPEnterpriseSearchMetadataCategory.md

Format example

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

sharepoint/sharepoint-ps/sharepoint-server/Remove-SPEnterpriseSearchMetadataCategory.md
:white_check_mark:Succeeded
View (sharepoint-ps)

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


Can't see code when at the bottom of a long list of layers

I'm thinking the solution here would be making the list and content scroll separately.


chore: ignore unfixable vulnerabilities

This repo is being scanned by snyk-iac-group-seceng: https://app.snyk.io/org/snyk-iac-group-seceng/project/01868049-d1f7-48cd-ad59-d9bb10f6fe89
There quite a few vulnerabilities, some of which can be fixed by updating @docusaurus package from 2.0.0-beta.9 to 2.0.0-beta.17.
While attempting this I ran into a few problems:

(fixed) had to update @theme/hooks to @docusaurus/theme-common
Error: Cannot find module 'webpack/package.json'

this was fixed in<EMAIL_ADDRESS>but @docusaurus use their own forked version of this library which is stuck at<EMAIL_ADDRESS>(https://www.npmjs.com/package/react-loadable-ssr-addon-v5-slorber)
there is a recent issue with activity that might fix this: https://github.com/facebook/docusaurus/issues/6246

In the meantime though, I saw that this same procedure was attempted in https://github.com/snyk/driftctl-docs/tree/chore/update-dependencies. To avoid on-callers having to re-investigate this same issue, I am ignoring all vulnerabilities in this repo that are caused by @docusaurus
I've set a one month expiry time, but I'm hoping by then this fill be fixed upstream.

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

Note: sort-of related to https://github.com/snyk/driftctl-docs/pull/214, but not a replacement for it, I think

Nope not a replacement - more of a temporary "silence" until we are actually able to deliver #214


Bytes fix additional test cases

Additional test cases of string literals.

Closing this one then, and creating a new one directly from warp-ts.


KAFKA-5562: execute state dir cleanup on single thread

Use a single StateDirectory per streams instance.
Use threadId to determine which thread owns the lock.
Only allow the owning thread to unlock.
Execute cleanup on a scheduled thread in KafkaStreams

@guozhangwang @mjsax @enothereska @bbejeck

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/kafka-pr-jdk7-scala2.11/6014/
Test PASSed (JDK 7 and Scala 2.11).

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/kafka-pr-jdk8-scala2.12/5999/
Test PASSed (JDK 8 and Scala 2.12).

System test results: http://confluent-kafka-branch-builder-system-test-results.s3-us-west-2.amazonaws.com/2017-07-10--001.1499723012--dguy--kafka-5562--3ef084d/report.html

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/kafka-pr-jdk7-scala2.11/6112/
Test PASSed (JDK 7 and Scala 2.11).

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/kafka-pr-jdk8-scala2.12/6097/
Test PASSed (JDK 8 and Scala 2.12).

Interesting, thanks. LGTM

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/kafka-pr-jdk7-scala2.11/6144/
Test PASSed (JDK 7 and Scala 2.11).

@guozhangwang

Another meta question: could you try running StreamThreadTest.shouldReleaseStateDirLockIfFailureOnTaskSuspend locally and see if the previous issue we saw about if (!locks.containsKey(id))  returns true even for the same thread which has already get the lock?

@guozhangwang w.r.t StreamThreadTest.shouldReleaseStateDirLockIfFailureOnTaskSuspend the test has changed to use a mock StateDirectory so this definitely won't occur in that test.
Also, the methods on StateDirectory are now synchronized so i don't see any possibility of this happening.

@guozhangwang below are results from running the simple benchmark with 8 threads. Looks like no difference really
cleanup thread every 100ms
Streams Performance [records/latency/rec-sec/MB-sec source+store]: 10000000/18070/553403.4311012728/69.42790970329956
Streams Performance [records/latency/rec-sec/MB-sec source+store]: 10000000/18197/549541.1331538166/69.00844394738134
Streams Performance [records/latency/rec-sec/MB-sec source+store]: 10000000/17967/556575.9447876663/69.85705100667957
never cleanup
Streams Performance [records/latency/rec-sec/MB-sec source+store]: 10000000/18150/550964.1873278237/69.1831415349787
Streams Performance [records/latency/rec-sec/MB-sec source+store]: 10000000/18455/541858.5749119481/67.98810294830066
Streams Performance [records/latency/rec-sec/MB-sec source+store]: 10000000/17897/558752.8636084261/70.0544206071794

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/kafka-pr-jdk7-scala2.11/6309/
Test PASSed (JDK 7 and Scala 2.11).

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/kafka-pr-jdk8-scala2.12/6293/
Test PASSed (JDK 8 and Scala 2.12).

retest this please

retest this please

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/kafka-pr-jdk7-scala2.11/6343/
Test PASSed (JDK 7 and Scala 2.11).

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/kafka-pr-jdk8-scala2.12/6328/
Test PASSed (JDK 8 and Scala 2.12).

Merged to trunk

@dguy I realize it is not cherry-picked to 0.11.0; could you file a separate PR for it?


Loris cluster experiments

What is this PR trying to achieve?
Trying again to make Loris faster. M4 images are memory optimized and the network performance is high. If Loris is slow because of network we should see an improvement here
Who is this change for?
Anyone using Loris
Have the following been considered/are they needed?

[x] Run terraform apply.

So, small update on what has been going on with this branch. I tried different underlying EC2 instances to prove different hypothesis on what is the bottleneck in Loris.

First hypothesis: EFS cache is the bottleneck -> tried backing the instances with a EBS cache. There is a slight improvement after leaving it running for a few days but not huge (Check monitoring screenshots below).
Second hypothesis: network is the bottleneck -> tried a m4.xlarge and a r4.xlarge both of which have a better network provision than the current t2.large. Result: Nope, it's not that
Third hypothesis: CPU is the bottleneck -> tried a c4.large and a c4.xlarge. c4.large didn't seem to make a difference (if anything it is slower). But c4.xlarge did improve response times as screenshots below show.

c4.xlarge is expensive though and I think it might be worth checking if we can reduce Loris CPU usage. Average CPU usage seems to sit around 20-30% of provisioned CPU but there are consistently a lot of spikes that go up to 100% of CPU. One way to try and reduce these spikes might be to reduce the number of wusgi processes in the Loris docker images. It might be that if we have too many, that could cause the CPU to constantly switch between them.
Additionally, combining EBS cache with c4 instances might combine and enhance the
improvements seen with both of them individually.
So,

[ ] I'm going to shut down Loris C4 cluster and migrate the Loris EBS cluster to use C4 instances to see how much that improves things

[ ] Build another Loris with half the number of processes and check what happens to CPU usage

Closing this one and coninuing work in #1039


Aliasing problem due to shrink-on-load(?)

I discovered this bug by chance while testing some images. See this testcase:
const sharp = require("sharp");

sharp('test_800x600.jpg')
  .resize(400)
  .toFile('test_800x600_aliasing.jpg');

(original picture can be downloaded from here)
Output (tested with sharp v0.17.3):

(nasty aliasing artifacts at the roof)
Expected output:

(with vipsthumbnail)
The thumbnail operator from libvips has fixed this by leaving at least a factor of two for the final resize step. See thumbnail.c#L203-L217, and the wiki.
While looking at the source code of sharp, I noticed that the shrink-on-load doesn't take this into account. See pipeline.cc#L230-L241.
In an attempt to fix this, I came to this patch (line 230-241 in pipeline.cc):
-        if (xshrink >= 8) {
+        if (xshrink >= 16) {
          xfactor = xfactor / 8;
          yfactor = yfactor / 8;
          shrink_on_load = 8;
-        } else if (xshrink >= 4) {
+        } else if (xshrink >= 8) {
          xfactor = xfactor / 4;
          yfactor = yfactor / 4;
          shrink_on_load = 4;
-        } else if (xshrink >= 2) {
+        } else if (xshrink >= 4) {
          xfactor = xfactor / 2;
          yfactor = yfactor / 2;
          shrink_on_load = 2;
        }

But that doesn't seem to work (maybe I'm missing something).

Hallo Kleis, great work, it's always good to improve the quality of output images.
To get your patch to do what we need, I think we'd also need to change the "shrink" vs "reduce" ratio to be more like libvips/resample/resize.c#L132.
It might be worth experimenting with applying this change only when there will be no floating point residual, i.e. only when shouldReduce is false . When vips_reduceh/vips_reducev are used, they deal with any aliasing from the integral shrinking stages, be that "on load" or via vips_shrinkh/vips_shrinkv.
Another thing to consider is that libwebp's shrink-on-load uses a different algorithm to libjpeg's, so this might have to be conditional based on format.

"worth experimenting with applying this change only when there will be no floating point residual"

Quick update: I've got a prototype working that dynamically varies the use of shrink-on-load and box shrink based on the level of kernel-based reduction. The tl;dr is "same high performance most of the time, occasionally take a slight performance hit to ensure high quality".

Commit e398b47 adds the dynamic shrink(-on-load) behaviour to ensure a kernel-based reduction will always occur. This will be in v0.18.0. Thanks again for your original, well-written report about this.

When vips_reduceh/vips_reducev are used, they deal with any aliasing from the integral shrinking stages, be that "on load" or via vips_shrinkh/vips_shrinkv.
I'm not sure that's quite right (or I've misunderstood), you must do at least the final 200% with reduce to avoid aliasing from the block shrink. Some people say it should be slightly more than 200%, perhaps 210%, to be safe, though vipsthumbnail just leaves the last 200%.

@jcupitt Yes, sharp is still taking a bit of a shortcut by reducing only the final 101%-200%. This change at least prevents it skipping the reduce operation entirely (the "100% scenario").

Ah OK, then I think you will still see aliasing with some shrink factors. I think I'd add another factor of two to the amount of reduce you do.

v0.18.0 now available (with the slight improvement for the 100% case).


OnClick listeners on the BalloonPopup

Is there a way to have a two onClicklistener on the BalloonPopup which handles different behaviour. Also can we customise the layout of it?

Please use one of developer support channels: https://developer.nutiteq.com/support to ask Nutiteq SDK development questions. The github project is for specific issues about sample code


AttributeError: module 'numpy' has no attribute 'int64'

python /home/mmdetection/tools/featuremap_analyze.py /home/mmdetection/configs/yolo/yolov3_mobilenetv2_320_300e_coco.py /home/mmdetection/mmdetection/checkpoints/retinanet_r50_fpn_1x_coco_20200130-c2398f9e.pth --img_dir /home/mmdetection/demo/demo --output_dir /home/mmdetection/Dataset/dir
when i want to use it in mmdetection ,there is an error.
Error:
Traceback (most recent call last):
File "/home/wangchang2/mmdetection/mmdetection/tools/featuremap_analyze.py", line 5, in
import cv2
File "/home/wangchang2/anaconda3/envs/mmdeploy/lib/python3.7/site-packages/cv2/init.py", line 11, in
import numpy
File "/home/wangchang2/anaconda3/envs/mmdeploy/lib/python3.7/site-packages/numpy/init.py", line 138, in
from ._version import get_versions
File "/home/wangchang2/anaconda3/envs/mmdeploy/lib/python3.7/site-packages/numpy/_version.py", line 7, in
import json
File "/home/wangchang2/mmdetection/mmdetection/tools/json.py", line 5, in
import mmcv
File "/home/wangchang2/anaconda3/envs/mmdeploy/lib/python3.7/site-packages/mmcv/init.py", line 3, in
from .arraymisc import *
File "/home/wangchang2/anaconda3/envs/mmdeploy/lib/python3.7/site-packages/mmcv/arraymisc/init.py", line 2, in
from .quantization import dequantize, quantize
File "/home/wangchang2/anaconda3/envs/mmdeploy/lib/python3.7/site-packages/mmcv/arraymisc/quantization.py", line 5, in
def quantize(arr, min_val, max_val, levels, dtype=np.int64):
AttributeError: module 'numpy' has no attribute 'int64'

just lower numpy to 1.19.0,it works


Add an option to download into user-defined hierarchy

Since we have patient/study/series etc in the index, we can create folders on the fly and organize files as such. This feature can also be useful in Slicer browser. Need to think how to configure the path structure, or easier just freeze it with specific choices.

One idea could be we make download directory argument optional..and by default, we can download the series into patient/study/series_id hierarchy

I suggest having a look at the DataOrganizer module I build in mhubio for some inspiration ;)

The idea is to define a path template like my/dir/[PatientID]/[SeriesInstanceUID], where the variables in brackets will resolve to values from the columns. This then is resolved for the subset of data (e.g., returned by a sql_query) and resolved per row before the download.

@fedorov
thedicomsort allows the use of any attribute in the DICOM header. So I think we cannot use Steve's implementation directly. I' think we could allow any of the following attributes in any order.
collection_id,
patientId,
seriesInstanceUID,
StudyInstanceUID,
studyDescription,
and Modality
This is similar to tcia's 'classic' implementation. Except, we allow studyDescription, Modality, and the attributes to be in any order. The users are expected to provide a similar string template as dicomsort in the following example.
%PatientName-%Modality%StudyID-%StudyDescription-%StudyDate/%SeriesNumber_%SeriesDescription
What do you think?

I was just thinking about this, why not just downloading the data into a single folder and then running dicomsort in-place? Thesicomsort could even be an (optional) dependency of idc-index :)

thedicomsort allows the use of any attribute in the DICOM header. So I think we cannot use Steve's implementation directly. I' think we could allow any of the following attributes in any order.

Yes, right - we would only allow the use of the attributes that are present in our index!

I was just thinking about this, why not just downloading the data into a single folder and then running dicomsort in-place? Thesicomsort could even be an (optional) dependency of idc-index :)
For a small cohort, this would work just fine, but it is not unreasonable to have cohorts that will have 10s of TBs. Moving that much data in place will not be quick. Most important, it is completely unnecessary, since we can download in-place.


Add USDY

Description
USDY
Checklist
Adding Assets
If adding a new asset, please ensure the following:

[x] Asset is registered to the Cosmos Chain Registry.
[x] Add asset to bottom of zone_assets.json.

[x] chain_name and base_denom are provided and use values exactly as defined at the Chain Registry.
[x] path is provided, and the IBC channel referenced is registered at the Chain Registry (unless native to Osmosis).
[x] osmosis_verified is set to false
[x] listing_date_time_utc is specified and accurate
[ ] Optional: transfer_methods, peg_mechanism, override_properties, canonical, categories, where necessary (see README for details).

Actually, can we add categories: ["stablecoin"] and peg_mechanism: "" (inserting the actual peg mechanism: collateralized vs algorithmic vs hybrid) as well please?


Bert Example: Add needed vmap to embeddings

Running the Bert example fails with
ValueError: `eqx.nn.Embedding()(x)` should be called with a scalar index `x`. Use `jax.vmap` if you would like to index with multiple values.

just added the vmap in.

LGTM! Thank you for the fix. (This was changed to be more strict a few releases ago.)


Player NPCs not working

I have been using ZNPCs for quite some time now. Recently, I noticed that all the NPCs load except the player NPCs. Can you please help?
Is this because of a conflicting plugin?
I am running Purpur on my server

Same my player npcs is not even working on server

Can confirm this does not work when creating a player npc. Other npcs work, just not player
Here is the log
https://pastebin.com/9Vn76ZGM


fix sitemaps

Pre-Flight checklist

[ ] Testing

[ ] Code is tested
[ ] Changes have been manually tested

What are the relevant tickets?
Closes https://github.com/mitodl/ocw-hugo-themes/issues/673
What's this PR do?
First of all, a few prerequisites:

Swaps out hugo-bin for hugo-bin-extended, which uses the latest version of Hugo (0.98.0)
Upgrades the version of NodeJS used in Github Actions runners to latest LTS (16.15.0)

This PR accomplishes a few things regarding sitemap generation:

General sitemap template moved to the base theme so they apply to all themes
Base theme sitemap template now filters out content with headless set to true (static JSON, etc.)
Adds a new home.xml template to the www theme that in conjunction with the changes in https://github.com/mitodl/ocw-hugo-projects/pull/176 will facilitate the generation of a sitemap_index.xml file.  This file will tell Google where all of the course site sitemaps are located.  It obtains a list of published course sites using the ocw-studio API and generates a list of sitemaps based on the response.

How should this be manually tested?

Clone ocw-hugo-projects on the cg/sitemap-index branch
Clone the ocw-www content repo
Clone ocw-hugo-themes on this PR branch and make sure you set the following variables in your .env file:

SITEMAP_DOMAIN=ocw.mit.edu
WWW_HUGO_CONFIG_PATH=/path/to/ocw-hugo-projects/ocw-www/config.yaml
WWW_CONTENT_PATH=/path/to/mitocwcontent/ocw-www/

Spin up ocw-www with npm run start:www
Visit http://localhost:3000/sitemap_index.xml and verify that the sitemap index looks correct according to Google's documentation
Visit some of the sitemaps referenced in the index and verify that the links work
Visit http://localhost:3000/sitemap.xml and verify that the content in ocw-www itself is in there, sans headless content like instructors
Verify that the links inside sitemap.xml work

FYI: It is expected that the deploy preview will fail as https://github.com/mitodl/ocw-hugo-projects/pull/176 needs to be merged to add the expected env variables to the security configuration

Curious, should we name it sitemap_www.xml  instead of stemap.xml   . Google might get confused which file is witch between sitemap.xml and sitemap_index.xml
Do you have a screenshot to share ?

@Ferdi It's tough to find reliable info on how this works, there's mostly just subjective experiences like this: https://stackoverflow.com/questions/6362942/listing-both-sitemaps-and-sitemap-index-files-in-robots-txt.  From what this post says though, it looks like we might be able to specify Sitemap: https://ocw.mit.edu/sitemap_index.xml in robots.txt and then make sure https://ocw.mit.edu/sitemap.xml is included in the index?  I'll get some locally rendered examples up for you to look at.

@Ferdi I changed the robots.txt to look like this:
Sitemap: https://ocw.mit.edu/sitemap_index.xml

User-agent: *

Disallow: /

Here's some Gists with my locally generated output:

sitemap_index.xml: https://gist.github.com/gumaerc/52200fe07ad6cc8b1b0797fd44f700fd
sitemap.xml: https://gist.github.com/gumaerc/6f1376e45862c7a533c8dd945a176ef1

@Ferdi You're referring to this doc?  All of Google's documentation on this is frustratingly non-specific, but that does specify sitemap_index.xml as the file name.  In theory, what you suggest should work because sitemapindex is part of the XML schema referenced at http://www.sitemaps.org/schemas/sitemap/0.9 and it shouldn't really matter what the filename is.

@ChristopherChudzicki would you mind taking another quick look at this?  I updated this and the ocw-hugo-projects PR to generate the files the way Ferdi suggested and updated the testing instructions to reflect what the new filenames should be.


it is linting wrong

I have code like this

List of used eslint plugin
"babel-eslint": "^7.1.1",
"eslint": "^3.15.0",
"eslint-import-resolver-babel-module": "^3.0.0",
"eslint-plugin-import": "^2.2.0",
"eslint-plugin-react": "^6.9.0",

eslintrc
{
	"parser": "babel-eslint",
	"parserOptions": {
		"ecmaFeatures": {
			"jsx": true,
			"modules": true
		}
	},
	"env": {
		"es6": true,
		"node": true,
		"amd":true
	},
	"settings":{
		"import/resolver": {
			"babel-module": {}
		}
	},
	"plugins": [
		"react",
		"import"
	],
	"rules": {
		"import/no-unresolved": "error"
	}
}

What I want to do:
I want eslint to check if the imported files are valid/existing
How I know it works:
I run eslint in the command line, no error
problem:
in sublime, eslint can regconize some file, it shows error
import React from 'react' // node_modules
import Header from 'header/Header' // app/component/header/header
import config from 'config' // app/config
import './home.scss' // app/css

With eslint babel module resolver, everything works fine in the cli, but sublime, the home.scss and react module was recognized but the header and config

I'm seeing the same issue, did you find a workaround for this? Also might be worth renaming the issue to something like "Linting local folder imports incorrectly" to increase searchability.

For something like this to work, it is important to have a correct working dir set, isn't it? I mean you run this from the root of your project, where package.json lives.

I have couple of projects and one of them is at nested folder: scr/web/spa
All settings and configs is there, how I can setup sublime linter without changing sublime project file


.bashrc Cannot find expected file ...literals.py

Hi!
When installing a univeral forwarder in version 9.1.1 (at least) on a fresh system via the ansible-role-for-splunk we get the following error message after a successful login with the splunk user:
$ sudo -i -u splunk
(exit=1) Cannot find expected file /opt/splunkforwarder/lib/python3.7/site-packages/splunk/clilib/literals.py
[splunk@host:/opt/splunkforwarder]$

This message comes from .bashrc's line:
. $SPLUNK_HOME/share/splunk/cli-command-completion.sh
What should be done with this error message?

I am seeing this issue a year later and updates on 9.1.4 and now to 9.2.2 still toss this sus msg


iPad: Add labels to main nav

@keybase/react-hackers CC @keybase/design
iPad only:

And light mode:


Suppress client-go deprecation warnings

What this PR does / why we need it:
Running kubeone apply outputs a lot of deprecation warnings generated by client-go, such as:
W0621 13:40:51.223984   74422 warnings.go:67] apiextensions.k8s.io/v1beta1 CustomResourceDefinition is deprecated in v1.16+, unavailable in v1.22+; use apiextensions.k8s.io/v1 CustomResourceDefinition

The warnings are present even if verbose isn't enabled.
This PR configures the client-go to show only the first warning, while the subsequent warnings will be suppressed. This PR should make the kubeone apply output more readable.
There are several possible alternative approaches here:

Suppress all warnings, including the first warning.
Suppress all warnings if verbose isn't enabled, but show all warnings if it's enabled
Suppress all warnings if verbose isn't enabled, but show the first warning if it's enabled

Does this PR introduce a user-facing change?:
Suppress client-go deprecation warnings

/assign @kron4eg

/retest

/retest

/retest


add inflation table to manifest

closes #232

the tests are going to continue to fail until a new spenc is released, but this PR includes an intermediate fix to stop the whole pacakge from crashing on import so i'm going to go ahead and merge


awesome-pyscript listing review

We still have more work to do: explain in the README how to contribute, link this into the main site, etc.
This PR starts a conversation about the entries, headings, and organization. If you have any listings that should be added, let's do so, as a way to chat and think.

@jhanley-com Can you take a look at this and comment? It's a draft at the moment.

I'd like to recommend @jeffglass' and @do-me articles here :)

We should also add the discourse link here? Or is the README a better place?
Also post it broadly :)
On the anaconda forum for example + discord.
(I can post it on the forum)

I think having an "Other" section for things that don't fit elsewhere would be a good place for the Discord link. I'll add it.

@pauleveritt All the posts are at https://jeff.glass/tags/pyscript, but I'm particularly proud of:

'The 7 GUIs' in PyScript project, and the accompanying blog post with explanations and details
Image Uploading and Manipulation with PILLOW in PyScript
Pyscript/Pyodide and JS Object Passing, the core of which is now a PyScript how-to
Scikit Image Processing is more of a demo than an article, based on an idea from @kolibril13 - he's running much further with the idea over at  kolibril13/pyscript-emoji-skimage

Great, I just added your blog category as a "channel" in the file and added the emoji example under apps.
@JeffersGlass Wonder if you're interested in doing a review on what's being proposed for the Collective, or even joining as a co-show-runner?

@JeffersGlass and @do-me can you give me a pointer to the articles?

Hi, sorry for the delay. I just added a category "pyscript" to my blog, see here.
Thanks! More articles to come soon, I have some drafts ready.

Very good, thanks @do-me I added the "channel" and pushed. Same offer to you: interested in reviewing or co-leading in this Collective stuff?

Hi @pauleveritt, thanks a lot for the invitation! I'd love to but I am quite limited in time this month. For the moment I'd like to focus on the pyscript documentation, particularly on file handling (#595). As soon as I'm done with this, I gladly come back here!

Sounds good, when you get a chance @do-me check back in.

Wound up not getting any reviews so I went ahead and merged. We can improve as comments come in.

I reviewed it, sorry I wasn't clear about it.
And thank you for your work @pauleveritt!


[BUG] Placing LittleTiles is ignoring protected area

Hey,
It's still possible to place new tiles in a protected area. (Breaking or changing the tiles is protected properly).
Somebody has reported this issue to me and I have no idea why this isn't working. Some plugins work perfectly fine others don't. I fire a MultiPlaceEvent before placing (source), that should be forwarded by SpongeForge (if I'm not mistaken). Maybe you have an idea?

I've provided a fix on discord but there still seems to be an issue with client not getting updated properly. Relogging fixes the issue of course. Have you tested the client packets on Forge server and verified it works as expected?

I've provided a fix on discord but there still seems to be an issue with client not getting updated properly. Relogging fixes the issue of course. Have you tested the client packets on Forge server and verified it works as expected?

Yeah, that might be an issue of LT. Because the client always places it, so the server has to sync the blocks again. Should be an easy fix on my end.

Yeah, that might be an issue of LT. Because the client always places it, so the server has to sync the blocks again. Should be an easy fix on my end.

New version is out ... so many everything works properly, still needs to be tested.

New version is out ... so many everything works properly, still needs to be tested.

I guess I will close this issue as this has been already fixed and should work.

I guess I will close this issue as this has been already fixed and should work.

Testing confirms it.

Testing confirms it.


Added Palindrome Program & Count Vowels and Consonants Program.

@all-contributors please add @letscodedev  for code


Invoke cargo-llvm-cov with --all-targets

Make sure to invoke cargo-llvm-cov with the --all-targets option to collect code coverage on all eligible targets. Doing so seems to include the running of benchmarks (in "test mode"), which has the potential to bump our coverage numbers, in addition to simply being the right thing to do (tm).

Simple change; merging.