6.8 release

release notes in work...

- 2020

  • DoTabs added with onClickDo: blocks on tabs
  • WebElement isActive climbs the stack to find an app for testing activity
  • debugAfter: 10s in WebApplication composeWebViewFor: to catch any request processing longer that 10s = probably endless loop
  • AIDASite memoryGrowthCheck to catch fast memory growths/endless loops, start with #initMemoryGrowthCheck
  • AIDASite ddosPreventionCheckFor: added, triggered after 100K requests/day, checked in #answerTo: at each web request.
  • WebScheduler, WebScheduledEvent - lot of improvements and bugs removed
  • AIDASite ddosPreventionCheckFor: on 100K requests stops site and raise a warning for a potential DDoS attack
  • AIDASite cookieHeaderFor: to year 2040 (before 1jan2020 :)

- 2019

  • event handling diagnostic on Transcript commented out
  • DailyCollection first added
  • DefaultWebStyle - gray (disabled) big arrows added
  • WebJSON consume:or:returning: added (null or nan returns nil)
  • WebElement delegateToNewestAfterUpdates introduced
  • patch: WebSession respondToElementDirectRequest no more error exception
  • WebElement add: has now an adding itself check to prevent loops
  • WebContext isActive added, context is active if not closed
  • patch: WebWidget add: checks if itself is addded and returns an error
  • patch: WebWidget app checks for eventual loop in WebForms
  • better cleanup
  • AIDASite answer:toGetOrPost:on:   ensures streamedResponse close
  • patch: WebRealtimeConnection setAppContextFrom:
  • patch: DailyCollection all now really sorts by recent first
  • don't cleanup guest sessions with open realtime connections
  • WebSession isRealtimeOpen added
  • WebGrid rowOrangeIfTrue: added
  • DefaultWebStyle css24WebGrid, oldCss24WebGrid - orangered rows added
  • Preparing for separation of state if same app view is open in multiple browser tabs or  windows,  by using contexts
    -- WebPage setBrowserSessionContext store in sessionStorage.aidaCtx a context id
    -- WebStyle js141WebSockets sends sessionStorage.aidaCtx in opening websocket
       request
    -- WeRealtimeConnection stores now a context instead of app and view
    -- WebRealtimeHandler, Connection cleanup improvements
    -- WebContextFirst stores state of a page (loaded, unloaded, later more)
    -- WebApplication activeViews removed, use contexts instead
  • WebStyle js141WebSocket it must have /? in url /aidasession/websocket/?pageurl= because of Apache wstunnel strange requirements
  • patch: WebStubElement isActive always
  • AIDASite
      -- lastAnnouncementTimestamp introduced
      -- countRequest:onObject: improved
  • WebDemo,App realtime example improvements
  • WebAdminApp viewSite is realtime again
  • AIDASite settings securedExternally introduced. Set it manually if SSL is handled via external web server/proxy
  • WebSockets now work through secure/encrypted connections
  • if site securedExternally is not explicitly set to true or false, a warning is shown in Transcript when requests are forwarded through external web server&/proxy
  • optimizing cleanup after element update
  • WebElement
        -- isOldAfterUpdate, setOldAfterUpdate introduced
        -- update
                check if element is active, raise error otherwise
                setOldAfterUpdate
        -- isActive if not oldAfterUpdate or app is active or parent is active
  • AIDASite announceActivity improved with better cleanup
  • WebElement
         -- unregisterId, Ids added
         -- update - cleanup of old element added (releasePartially, unregisterIds)
  • patch: WebApplication setCreatedTimestamp actually save timestamp
  • WebElement isActive works now correctly also if App state was released
  • realtime patches, better diagnostics
  • more AidaGroup support for cross-site authentication and access
  • AidaGroup introduction, for cross-site access and authentication
    patch: String asHttpFriendly  cares about # too
  • WebHelp removed, noone uses it
    SwazooAida removed, noone uses it, use SwazooServer instead
  • WebApplication debugAfter: seconds added to catch endless loop errors in app code easier. Add it at the start of your view methods
  • WebScheduler

-- priority instvar added, to see on which priority scheduler runs
-- patch: startLoop checks timestamps in +/- resolution time window

  • WebSchedulerEvent

-- start/stop introduced to individually handle events
-- priority instvar introduced to see/change a priority of the process executing event

  • WebScheduler
    -- resolution can now be set, 1ms is minimum, 1s as before is default
    -- everySecondAt:runBlock: added

- 2018

  • WebPage streamHtmlTo: aStream for: aRequest on: aSession
  • self releasePartially. "to preserve memory, but not elements with event handlers and form fields"
    "form field registration after element/widget update don't work after that !!! janko jan17 "
  • VersionedObject
       -- existsVersionNumber added
       -- versionNumber: trim blanks
  • WebSession printString - site added
  • Date readISOFrom: added
  • Timestamp readISOFrom: added
  • patch: WebSession
        - registerIp deals properly with new sesions IPs
        - improved printString
  • Websession registerIP considers a web proxy server too
  • Date - added
  • Magnitude asString added
  • Object aidaWebAppFor WebMobileApp line removed
  • String capitalized, convertToSlovene chars, moved to other category?
  • WebAdminApp delay to 1s instead 2 after unsuccessful login
  • WebInputField etc explicit tag setup added
  • WebMethodLibImporter skips also @ and + while forming method names
  • WebScheduler removeEvent:ifAbsent: added

- 2017

  • patch: WebAutocompleteField2 aidaPresenterFor: on:
  • WebUser, Person hasValidEMail added
  • Person hasEMail added
  • WebGrid, WebGridColumn
      -- filtering and sorting of dates too,
      -- nil values shown as empty space,
      -- space column added automatically if right alignment follows left one
  • VersionSpec existNumber: added, number: does not allow entry of existing number
  • DefaultWebStyle cssPrint11Page @page moved here for PDF creators
  • WebAutocompleteField choicesCollection added
  • DefaultWebStyle pageFrameWith.....printFooter:  added
  • URLResolver lowercaseUrl: added, to lowercase, trim blanks and remove spaces and tabs from url
  • WebEvent fromJSON: ignores if string is nil
  • #releasePartially temporary switched off in WebPage streamHtml... because  form field regisitration after AJAX element/widget update don't work after that
  • EMailMessenger maibox and receiving mail now active.
  • class Mailbox moved from BiArt-support to Aida-Support

- 2016

  • JQueryLibrary .ui-front z-index from 100 to 9999 in cssUiJqueryUi1103CustomCss
  • no more access violation message on transcript except for update violations
  • DefaultWebStyle withProfileLink added, used in login header
  • Integrated Web Fonts support added
  • WebElement streamInnerHtml, set, reset,  added, to explicitly stream inner Html (without tag and attributes). Used for Ajax element update
    patch: WebSession queueUpdateElement, no more bad copying but explicit streamInnerHtml request
  • DefaultWebStyle services (settings) icon added
  • WebGrid reports error if addBlock to a numbered column 

- 2015

  • patch: WebFormElement focus now sets cursor at the end of the field
  • patch: WebGrid active filter focus now works
  • WebGrid no more * needed in filters
  • WebAdminApp viewLoginGoogle2 reports error if OpenID not present
  • AdvancedSearch allFieldsExcept:to: added
  • patch: WebSession aidaPresenterFor: aRequest on: aSession - proper event handling if there is no valid context
  • patch: WebGeolocation distanceBetween:and:
  • patch: String asHttpFriendly converts '&' too
  • Object aidaIsAccessAllowedFor: and aidaIsUpdateAllowedFor: aWebUser now for all domain objects (previous only for Scribo Document)
  • WebApplication accessAlloed and updateAllowed check above Object methods too
  • WebLink accessAllowedFor: check above Object methods too
  • inyMCE4Library introduced, to slowly migrate from TinyMCE v3 to v4

- 2014

  • patch: WebPage addLinkTo* doesn't register method resources to URLResolver anymore, to avoid duplicate method resources, one in style class, other in URLResolver
  • WebElement releasePartially now nil parent and elements except in WebForm, WebPage, WebWindow,
  • #releasePartially introduced to partialy cleanup after page is streamed, but preserve elements with event handlers and form elements (WebElement, WebPAge, WebText for now)
  • AIDASite localIPs setting added, for easier detection of requests coming from the same machine

 

Continue to older 6.6 Release Notes